0

我对第一次打开时会打开未附加到窗口的工作表有疑问。将其关闭后,工作表将按应有的方式工作。

这是我开始工作表的代码:

- (IBAction)addButtonAction:(id)sender {

    assert ([editorController window]);
    assert (window);

    [NSApp beginSheet: [editorController window]
       modalForWindow: window 
        modalDelegate: editorController 
       didEndSelector: @selector(didEndSheet:returnCode:contextInfo:) 
          contextInfo: nil]; 
}

变量“window”和“editorController”在应用程序委托头文件中初始化为@private。

'didEndSelector' 在'editorController' 代码文件中定义,并在窗口关闭时调用。

'didEndSelector' 的代码如下:

- (void)didEndSheet:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo
{
    [sheet orderOut:self];
}

通过调用选择器“cancelButtonAction”取消窗口,如下所示:

- (IBAction)cancelButtonAction:(id)sender {
    [NSApp endSheet:self.window];
}

任何想法将不胜感激。

4

1 回答 1

1

确保未打开 xib 文件中 NSWindow 上的“启动时可见”选项。

于 2012-04-02T00:24:50.733 回答