0

如何使用我创建的第二个窗口,有没有办法在触发IBAction事件时打开它,例如“触地”事件?

4

2 回答 2

0

通常,您在单独的 XIB 文件中创建窗口,并创建 NSWindowController 的子类,将其设置为 XIB 文件的文件所有者。

然后,您需要重写 init 方法来加载 XIB 文件:

- ( id )init
{
    if( ( self = [ super initWithWindowNibName: @"MySecondWindow" ] ) )
    {}

    return self;

}

然后,您只需要创建第二个窗口控制器的新实例,并显示窗口:

MyWindowController * wc = [ MyWindowController new ];
[ wc showWindow: nil ];

这可以通过您的 IBAction 方法来完成。

于 2011-03-01T23:06:03.033 回答
0

只是为了稍微扩展一下 Macmade 所说的:

我更喜欢正式的分配内存和初始化对象。

MyWindowController * wc = [[MyWindowController alloc] init];
[wc.window makeKeyAndOrderFront:self];
于 2011-03-02T03:29:20.870 回答