Tag: nswindow

在OS X 10.7.2下解锁焦点在错误视图((null))上

我有一个cocoa应用程序,它有一个NSWindowController控制一个NSWindow和一个NSComboBox 。 没有什么特别的,它工作正常,直到升级到OS X 10.7.2。 现在我得到下面的例外,当窗口控制器的窗口加载时,只发生一次。 (由于我应用程序中的窗口控制器保持加载状态,因此每次启动应用程序时只会发生一次。)随后,对焦和未对焦combobox不会触发它。 任何人都知道10.7.2中是否有所改变,如果有的话,如何解决它? (这是发生在Xcode 4.2中) 2011-10-24 11:30:21.649 MyApp[7934:707] Unlocking Focus on wrong view ((null)), expected <NSComboBox: 0x40083d6e0> 2011-10-24 11:30:21.653 MyApp[7934:707] ( 0 CoreFoundation 0x00007fff8412d286 __exceptionPreprocess + 198 1 libobjc.A.dylib 0x00007fff88cdad5e objc_exception_throw + 43 2 CoreFoundation 0x00007fff8412d0ba +[NSException raise:format:arguments:] + 106 3 CoreFoundation 0x00007fff8412d044 +[NSException raise:format:] + 116 4 AppKit 0x00007fff8c76c1d5 […]

NSWindow与NSWindowCollectionBehaviorStation显示在仪表板上。 这是一个错误?

我试图让我的NSWindow : 在所有空间中都可见 显示桌面时可见(按F11 ) 在Mission Control / Expose中不可见 下面是这样做的,但有一个副作用: [self setCollectionBehavior: NSWindowCollectionBehaviorCanJoinAllSpaces | NSWindowCollectionBehaviorStationary ]; 在Mac OS X Lion上切换到仪表板时,该窗口在仪表板项目中一秒钟仍然可见,然后隐藏。 这是预期的行为还是错误? 我的应用程序的用户发现它很容易看到仪表板上的窗口,然后消失。 我希望他们只能显示空间,而不是仪表板。

如何以编程方式创build一个Cocoa窗口?

我的cocoa应用程序需要一些小的dynamic生成的窗口。 我怎样才能在运行时编程创buildcocoa窗口? 这是我迄今为止的非工作尝试。 我看不出任何结果。 NSRect frame = NSMakeRect(0, 0, 200, 200); NSUInteger styleMask = NSBorderlessWindowMask; NSRect rect = [NSWindow contentRectForFrameRect:frame styleMask:styleMask]; NSWindow * window = [[NSWindow alloc] initWithContentRect:rect styleMask:styleMask backing: NSBackingStoreRetained defer:false]; [window setBackgroundColor:[NSColor blueColor]]; [window display];