【发布时间】:2014-05-18 15:33:07
【问题描述】:
在我的应用程序中,我有一个辅助NSWindow,它是在我的NSWindowController 中的initWithWindowNibName: 方法中从.xib 创建的。该窗口是一个普通的NSWindow,标题栏已关闭。
创建窗口后,它使用makeKeyAndOrderFront: 显示 -
并且所有控件都被禁用(文本字段、组合框)。
我已经(超过..)三重检查窗口中的所有标志和控件的视图层次结构:一切都已启用,允许编辑而不是拒绝成为第一响应者。
完全不知道。有什么想法吗?
更新 #1:
我似乎问题与没有标题栏的窗口有关。当窗口上的标题栏打开时 - 并且窗口中的控件 - 按预期运行。
【问题讨论】:
-
“所有标志”是指可以在 IB 中设置的标志吗?特别是,如果您的窗口没有标题,那么
-canBecomeMainWindow和-canBecomeKeyWindow将返回FALSE。您可能需要覆盖它们以返回TRUE。 -
@KenThomases 确实 - 只是 IB 标志。好的,我会尝试使用子类。不过很麻烦..
-
您的意思是窗口中唯一的控件是文本字段和组合框?此类控件需要位于关键窗口中并成为第一响应者才能发挥作用,而其他控件(如按钮)无需位于关键窗口中即可工作。
标签: cocoa nswindow nswindowcontroller nsresponder nscontrol