beginSheet 方法对我不起作用

Posted

技术标签:

【中文标题】beginSheet 方法对我不起作用【英文标题】:beginSheet method not working for me 【发布时间】:2011-10-21 11:37:11 【问题描述】:

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

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

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

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

【问题讨论】:

【参考方案1】:

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

【讨论】:

我可以在哪里学习这样的东西有什么建议吗?在我遇到这个线程之前,我无法弄清楚发生了什么...... Apple 文档关于窗口表的屏幕截图显示了这一点。承认,这并不是放置该信息的所有地方中最突出的。【参考方案2】:

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

B.

【讨论】:

以上是关于beginSheet 方法对我不起作用的主要内容,如果未能解决你的问题,请参考以下文章

- (BOOL)loadShaders 方法对我不起作用

为啥 BlockInput 对我不起作用?我忘了啥吗?

Spring Data @CreatedDate 注释对我不起作用

为啥命名:false 对我不起作用

为啥 Class.forName() 对我不起作用?

从 obj c 类调用 javascript 函数对我不起作用