Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.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

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 AppDelegate(OSX)中主NSX窗口的参考出口_Objective C_Macos_Nswindow_Appdelegate - Fatal编程技术网

Objective c AppDelegate(OSX)中主NSX窗口的参考出口

Objective c AppDelegate(OSX)中主NSX窗口的参考出口,objective-c,macos,nswindow,appdelegate,Objective C,Macos,Nswindow,Appdelegate,当您创建一个新项目时,我似乎记得您能够使用AppDelegate方法中的self.window访问它在故事板中创建的基本空白窗口 我似乎也无法通过故事板设置AppDelegate.h文件的引用出口。我只是产生幻觉,还是无法从AppDelegate访问窗口/控制器 我是不是把iOS和OSX的做法混为一谈了?这对我很有效 我在AppDelegate.h中添加了一个IBOutlet @property (nonatomic) IBOutlet NSWindow *window; @property

当您创建一个新项目时,我似乎记得您能够使用
AppDelegate
方法中的
self.window
访问它在故事板中创建的基本空白窗口

我似乎也无法通过故事板设置
AppDelegate.h
文件的引用出口。我只是产生幻觉,还是无法从
AppDelegate
访问窗口/控制器

我是不是把iOS和OSX的做法混为一谈了?

这对我很有效

我在AppDelegate.h中添加了一个IBOutlet

@property (nonatomic) IBOutlet NSWindow *window;
@property (weak) NSWindow* window;
然后在界面生成器(MainMenu.xib for me)中选择应用程序委派:

您的IBOutlet应位于右侧的
连接检查器中


可能是.xib和AppDelegate之间的连接丢失了?

使用故事板,似乎无法将WindowController连接到AppDelegate。我使用以下内容获取对主窗口的引用:

AppDelegate.h

@property (nonatomic) IBOutlet NSWindow *window;
@property (weak) NSWindow* window;
AppDelegate.m

    - (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
            _window = [[[NSApplication sharedApplication] windows] firstObject];
    }

有关快速解决方案,请参阅。希望这有帮助:)

我已经尝试过通过控制点击并拖动到我的appdelegate.h文件来创建一个引用插座,但是它什么都做不了(通常蓝线会出现,我可以创建一个iboutlet),我也在使用故事板而不是.xib。这基本上是一个使用故事板的新鲜可可应用程序。我想我可能只是混淆了iOS基础和OSX,但我觉得我应该可以从appdelegate.m调用self.window,而不必做任何事情……对不起,在你的问题中错过了你的故事板参考。我没有将Cocoa应用程序与情节提要一起使用,因此我可能无法在这里帮助您。不用担心,我想我找到了解决问题的方法,而无需通过appdelegate访问窗口!谢谢你的帮助:)你找到解决办法了吗?我被困在这里