我想在NSToolbar中使用NSComboBox。我通过IB和Xcode 4.2来做到这一点。我可以将comboBox放在工具栏中并启动程序。第一次 - 也是第一次 - 应用程序启动,当我在ComboBox中设置焦点时,我得到以下异常:
解锁焦点错误的视图((null)),预期的NSComboBox
下次我将焦点设置在组合框中时,不会引发任何异常。
如果我对NSTextField或searchField做同样的事情,我不会得到任何异常。由于我不记得在早期版本的Xcode / Objective-C中遇到过这样的问题,我想知道,如果这是一个错误。
答案 0 :(得分:1)
我有同样的问题。将测试字段设置为不可编辑对我来说不是一个选项,我无法通过View中的Box来解决问题。
由于问题似乎与“焦点”有关,我去了界面构建器并为NSComboBox将焦点环设置为“无”。这解决了我的问题。
可以使用-setFocusRingType:NSFocusRingTypeNone
以编程方式完成此操作。
答案 1 :(得分:0)
您是否尝试过以下解决方法?
在工具栏中删除NSComboBox之前,尝试在工具栏上删除空的NSView。这应该为您创建一个带有空视图的工具栏项。然后将NSComboBox放在刚刚创建的工具栏项目内的NSView中。
我有类似的问题,这对我有用。
答案 2 :(得分:0)
我遇到了同样的问题。将组合框的行为更改为仅可选择可修复此问题。
幸运的是,我不需要组合框可以编辑。
答案 3 :(得分:0)
同样的问题,在NSPanel中使用NSComboBox。我在IB中将焦点环从“默认”更改为“无”。这解决了这个问题。
这是一个更多的背景。我的代码运行良好,直到进行了多次更改:从Xcode 4.2(Snow Leopard)转换为4.3(Lion)后出现问题。此过渡也包括从GC迁移到ARC。