【问题标题】:where can we write windowDidBecomeKey method for MainMenu.xib我们在哪里可以为 MainMenu.xib 编写 windowDidBecomeKey 方法
【发布时间】:2015-11-30 08:54:45
【问题描述】:

我认为这是一个简单的问题,但我是 Cocoa 的新手。我们在哪里可以为MainMenu.xib编写-windowDidBecomeKey方法,以便当主窗口成为键时应该调用该方法。谢谢。

【问题讨论】:

    标签: objective-c macos cocoa


    【解决方案1】:

    首先,转到您的应用委托头文件,然后更改如下所示的内容:

    @interface AppDelegate : NSObject <NSApplicationDelegate>
    

    到这里:

    @interface AppDelegate : NSObject <NSApplicationDelegate, NSWindowDelegate>
    

    然后进入实现文件,实现方法:

    - (void)windowDidBecomeKey:(NSNotification *)notification {
        // do something
    }
    

    然后在界面生成器中右键单击窗口的标题栏,并将 Delegate 旁边的点拖到您的应用委托上。


    或者,您可以收听通知。将此添加到 applicationDidFinishLaunching 方法中:

    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(windowDidBecomeKey:)
                                                 name:NSWindowDidBecomeKeyNotification
                                               object:_window];
    

    这种方法的优点是您可以随意命名监听器方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-01-06
      • 1970-01-01
      • 2015-06-10
      • 2011-06-16
      • 1970-01-01
      • 2017-05-13
      • 1970-01-01
      相关资源
      最近更新 更多