Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c OSX:从状态栏菜单启动窗口_Objective C_Macos_Nswindowcontroller_Nspopover_Nsstatusbar - Fatal编程技术网

Objective c OSX:从状态栏菜单启动窗口

Objective c OSX:从状态栏菜单启动窗口,objective-c,macos,nswindowcontroller,nspopover,nsstatusbar,Objective C,Macos,Nswindowcontroller,Nspopover,Nsstatusbar,我有一个作为代理运行的状态栏应用程序,没有停靠图标或主窗口。当你点击状态栏图标时,会出现一个弹出框(想想Dropbox),它有一个按钮。此按钮需要启动应用程序的窗口。因此,基本上,当你启动电脑时,应用程序会安静地启动,并位于状态栏中,直到你从popover启动它时,才会打开任何ui。我无法通过我的popover(它自己的独立nib)的视图控制器从main.storyboard启动视图/视图控制器 我遇到了一个答案,上面说要尝试以下方法: - (IBAction)LaunchButtonClick

我有一个作为代理运行的状态栏应用程序,没有停靠图标或主窗口。当你点击状态栏图标时,会出现一个弹出框(想想Dropbox),它有一个按钮。此按钮需要启动应用程序的窗口。因此,基本上,当你启动电脑时,应用程序会安静地启动,并位于状态栏中,直到你从popover启动它时,才会打开任何ui。我无法通过我的popover(它自己的独立nib)的视图控制器从main.storyboard启动视图/视图控制器

我遇到了一个答案,上面说要尝试以下方法:

- (IBAction)LaunchButtonClicked:(id)sender {
    NSStoryboard *storyBoard = [NSStoryboard storyboardWithName:@"Main" bundle:nil]; // get a reference to the storyboard
    myController = [storyBoard instantiateControllerWithIdentifier:@"Main"];       // instantiate your window controller
    [myController showWindow:nil];
}
但是,这不起作用,因为InstanceControllerWithiIdentifier返回的是viewController而不是windowViewController。你有什么想法吗?关于状态栏应用程序的信息并不多。我熟悉iOS编程,但这是我第一次尝试OSX应用程序

该应用程序目前非常小,因此如果需要,我可以提供更多的源代码


提前谢谢

是否在“主”情节提要中的窗口控制器上选中了“初始控制器”?它将在窗口控制器场景中创建一个“故事板入口点”项。原来有一个窗口控制器和一个视图控制器,两者的ID都是Main。。。哎呀!