我在不使用界面生成器的情况下尝试显示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没有在构建结果中显示任何错误(或警告)。但是,我确实在显示日志中收到了以下消息:
2010-06-26 13:33:47.170 FooApp[283:a0f] Could not connect the action buttonPressed: to target of class NSApplication我不知道如何解释这一点,因为谷歌在搜索这个显示日志错误的解决方案时失败了。而且,据我所知,我目前没有动作,包括buttonPressed动作。附注:我不知道这是否相关,但我删除了info.plist中的主Window.xib及其附带属性。
任何帮助都将不胜感激。
更新:我试着做了一些printf调试(从来没有真正费心去学习NSLog),如果它是在appliactionDidFinishLaunching的开头,或者甚至更糟糕,在main的开头(在返回之前,如果有些人想问我是把printf放在return语句的前面还是后面),结果都不会打印出来。
发布于 2010-06-27 16:40:25
MainWindow.xib是iphone App模板的一部分,不是吗?你到底删除了什么?你还留着MainMenu.xib,对吧?
正如您已经发现的,对于Cocoa应用程序来说,拥有nib文件并不是可选的。你必须至少有一个nib (或xib,对于年轻人来说),并且它必须有一个主菜单。
https://stackoverflow.com/questions/3125457
复制相似问题