gpt4 book ai didi

objective-c - 如何在运行时更改 NSPanel 的标题?

转载 作者:行者123 更新时间:2023-12-03 17:32:20 25 4
gpt4 key购买 nike

也许我在这里遗漏了一些非常简单的东西(我希望如此),但是有没有一个技巧可以在运行时更改 NSPanel 的标题?明显的 [panel setTitle:@"New title"] 似乎不起作用。

我正在尝试显示一个包含 WebView 的常规面板,并且我希望面板的标题能够反射(reflect) HTML 内容的标题。

我对 NSWindowController 进行了子类化并调用了 initWithWindowNibName。我将 Nib 中的类从 NSWindow 更改为 NSPanel,一切似乎都工作正常。在我的窗口 Controller 中,我这样做了:

- (void)windowDidLoad {
[super windowDidLoad];
[[self window] setTitle:@"My New Title"];
}

(我实际上会在 webView:didReceiveTitle:forFrame 委托(delegate)中设置标题,但这更容易显示)。

我验证了代码正在被调用,并且没有报告错误,但标题从未改变。有什么想法吗?

最佳答案

在包含面板的 nib 文件中,确保文件所有者的类已设置为 NSWindowController 子类,并且文件所有者的 window 导出已连接到面板。否则,窗口 Controller 将不知道它应该管理哪个窗口,并且[self window]返回nil

关于objective-c - 如何在运行时更改 NSPanel 的标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7605258/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com