我为令人困惑的帖子标题道歉。这就是我的意思:
假设我有一个显示窗口标题文本的操作。这是一个非基于doc的应用程序。
[window setTitle:@"Completed"];
我想为此返回的字符串添加静态标题。像“状态”这样的东西。因此,当触发操作时,窗口标题显示为:
状态:已完成,或状态:未完成等
因此“状态”始终位于变量字符串之前。变量字符串反映了基于应用程序中的另一个操作而存在的字符串。因此,我无法通过简单的方式实现我正在寻找的结果:
[window setTitle:@"Status:Completed"]; etc, etc.
我该怎么做?
感谢
保
答案 0 :(得分:0)
要么子类化NSWindow,要么将类别添加到NSWindow,例如-setStatus:
,并使用您想要的前缀调用-setTitle:
。
如果这一切都不可行,您可以观看NSWindowDidUpdateNotification
并在缺少前缀的情况下更新标题。记录此通知是在绘制窗口之前发送的,因此您不应该有任何闪烁。或者,您可以使用绑定来观察-title
并执行相同的操作。绑定可能会有更好的性能,因为您只在标题实际更改时调用代码。