NSWindow没有显示

时间:2010-06-26 20:44:44

标签: cocoa nswindow

我在尝试使用Interface Builder显示NSWindow时遇到了麻烦。窗口的初始化非常混乱,因为我更熟悉iPhone(没有相应的NSWindow)。所以我在谷歌搜索了一些代码,最终我发现了这个:

NSRect windowRect = NSMakeRect(10.0f, 10.0f, 800.0f, 600.0f);

NSWindow *window = [[NSWindow alloc] initWithContentRect:windowRect 
                                               styleMask:( NSResizableWindowMask | NSClosableWindowMask | NSTitledWindowMask) 
                                                 backing:NSBackingStoreBuffered defer:NO];

[window makeKeyAndOrderFront:nil];

所以我复制了那段代码并将其放在applicationDidFinishLaunching中,并认为一切都会很好。但一切都不好。 Xcode没有在Build Results中显示任何错误(或警告)。但是,我确实在显示日志中收到了这条消息:

2010-06-26 13:33:47.170 FooApp[283:a0f] Could not connect the action buttonPressed: to target of class NSApplication

我不知道如何理解这一点,因为Google在搜索此显示日志错误的解决方案时失败了。而且,就我所知,我目前没有任何行动,包括buttonPressed。作为旁注:我不知道这是否相关,但我在info.plist中删除了Main Window.xib及其附带的属性。

非常感谢任何帮助。

更新:我尝试了一些printf调试(从来没有真正困扰过学习NSLog)如果事情发生在{{1}的最开始,事情就不会printf 1}}甚至最差,在appliactionDidFinishLaunching的开头(如果你有些人试图问我是否在main陈述之前或之后放了printf),那么在返回之前。

1 个答案:

答案 0 :(得分:2)

MainWindow.xib是iphone App模板的一部分,不是吗?你究竟删除了什么?你还有MainMenu.xib,对吗?

正如您所发现的,对于Cocoa应用程序来说,拥有一个nib文件不是可选的。你必须至少有一个笔尖(或者xib,对于你的年轻人),并且必须有一个主菜单。