使用OSX 10.8 SDK在XCode for OSX中编写应用程序。我的所有Windows工作正常,直到我使用Interface Building来删除nib中的标题栏(我取消选中window元素的Attributes Inspector上的Title Bar
param)。窗口仍然显示,但所有子视图都被禁用。我再也无法输入文字和处理栏都是灰色的。
有谁知道为什么会这样?以及如何使用没有标题栏的窗口,但启用了所有子视图?
以下是标题栏的视图:
以下是没有的情况:
如你所见,一切都被禁用了。
更新
有人询问有关显示窗口的代码。对于这个例子,我没有使用任何代码。对于上面的两个屏幕,这里是我遵循的步骤:
Title Bar
属性。答案 0 :(得分:11)
在这个链接上有这个问题的答案:
Xcode 4, Cocoa Title bar removing from interface builders disables textView from editing
如果您阅读NSWindow的文档,您可以看到方法canBecomeKeyWindow和canBecomeMainWindow如果没有标题栏则返回NO。对NSWindow进行细分并超越这些方法将使它们成为关键窗口。
如果您已经安装了文档,那么有关于如何在Apple的文档网站中对这些窗口进行子类化的示例代码,或者在xcode中有示例代码。
在上面的链接中搜索canBecomeKeyWindow,将会包含示例代码,以帮助解释该过程。