在 NSWindowController 的窗口出现在屏幕上之前对其进行配置

发布于 2025-01-02 10:34:51 字数 379 浏览 3 评论 0 原文

我正在使用 NSWindowController ,不想在显示实际窗口之前在窗口上设置一些属性(特别是 styleMask 属性)。然而,NSWindowController 上的 window 属性只有在窗口已经出现在屏幕上时才可用。

我可以在 NSWindowController 上使用 initWithWindow: 但随后我无法再使用 nib 文件来存储窗口的内容(因为这使用 initWithWindowNibName:<那么

如何在显示之前配置视图,类似于 NSView 上的 viewWillAppear

I am using an NSWindowController not I want to set some attributes (specifically the styleMask property) on the window, before the actual window is shown. However, the window property on the NSWindowController is only available once the window is already on screen.

I could use initWithWindow: on the NSWindowController but then I am no longer able to use a nib file for the content of the window (because this uses initWithWindowNibName:.

So how can I configure the view before it is shown, something similar to viewWillAppear on NSView?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

所谓喜欢 2025-01-09 10:34:51

在 Interface Builder 中,取消选中“启动时可见”属性。这样做时,当窗口控制器加载相应的 nib 文件时,窗口不会显示,因此您可以在 -[NSWindowController windowDidLoad] 中配置窗口,然后使用 - 手动显示它[NSWindowController showWindow:]

请注意,Cocoa 中没有 -viewWillAppear 方法。

In Interface Builder, uncheck the ‘Visible At Launch’ attribute. When doing this, the window is not shown when the corresponding nib file is loaded by the window controller, so you can configure your window in -[NSWindowController windowDidLoad] and then manually show it using -[NSWindowController showWindow:].

Note that there’s no -viewWillAppear method in Cocoa.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文