beginSheet方法对我不起作用

时间:2011-10-21 11:37:12

标签: macos cocoa nswindow cocoa-sheet

我有saveWindowController(NSWindowController子类对象)。我使用initWithWindowNibName:方法来初始化控制器 我将xib中的文件所有者设置为SaveWindowController。我将delegate(从窗口)连接到文件的所有者,并将window(从控制器)连接到xib文件中的NSWindow。

[NSApp beginSheet:[self.saveWindowController window] 
   modalForWindow:[self window]
    modalDelegate:nil didEndSelector:nil contextInfo:nil];

执行此方法后,我看到没有标题栏的模态窗口,它看起来不像普通纸张。它只出现在第一个窗口的左下角。

你能帮助我吗,我做错了什么?

2 个答案:

答案 0 :(得分:18)

您是否在XIB中将SaveWindowController的窗口设置为“在启动时可见”?您必须取消选中该选项,否则只要加载XIB,您的窗口就会尝试显示,并且无法正确定位。

答案 1 :(得分:0)

在实现我在没有标题栏的IB 中声明我的工作表窗口之前,我遇到了很多麻烦。你的有吗?如果没有,请检查“标题栏”选项。