2014-06-05 29 views
6

Tôi muốn tạo một cửa sổ mới theo chương trình. Tôi có mã sau đây, và nó xây dựng, nhưng cửa sổ của tôi không hiển thị. Cách duy nhất tôi có thể làm cho nó có thể nhìn thấy được bằng cách thêm nó như là một cửa sổ con để mặc định 'cửa sổ'. Làm thế nào tôi có thể làm 'thắng' là một cửa sổ độc lập?Tạo một cửa sổ mới với NSWindow

@IBOutlet var window: NSWindow 

func applicationDidFinishLaunching(aNotification: NSNotification?) { 

    var win = NSWindow(contentRect: NSMakeRect(100, 100, 600, 200), 
         styleMask: NSResizableWindowMask, 
         backing: NSBackingStoreType.Buffered, defer: true) 

    window.addChildWindow(win, ordered:NSWindowOrderingMode.Above) 
} 

Trả lời

2

Bạn cũng cần một NSWindowController để hiển thị cửa sổ:

let window = NSWindow(...) 
let controller = NSWindowController(window: window) 

controller.showWindow(self) 
5

gì về việc thêm:

win.makeKeyAndOrderFront(win) 

Đối với tôi trên OSX (không iOS) sử dụng Swift và viết trong vim

let win = NSWindow(contentRect: NSMakeRect(100, 100, 600, 200), 
          styleMask: NSResizableWindowMask, 
          backing: NSBackingStoreType.buffered, defer: true) 

win.makeKeyAndOrderFront(win) 

bật lên aw indow

Các vấn đề liên quan