将标签移动到另一个NSWindow的视图然后再返回

时间:2012-05-13 11:03:07

标签: cocoa focus

在NSTextField上有一个无边框窗口,在该窗口中有一个NSButton。 canBecomeKeyView为此NSButton返回YES。我希望能够模拟这个NSButton的setNextKeyView成为NSTextField之后的下一个焦点持有者。无边框窗口是主窗口的子窗口。 NSTextField驻留在主窗口上。做这件事的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。

在界面构建器中,我有一个带有NSTextField和NSButton的窗口。我希望能够在它们之间进行选项卡。我做了我认为正确的事情:

  • 将NSWindow的intialFirstResponser设置为我的NSTextField
  • 将NSTextField nextKeyView设置为NSButton
  • 将NSButton nextKeyView设置为我的NSTextField

但这并没有像预期的那样发挥作用。

原来,在苹果>系统偏好设置>键盘有一个设置,允许您按Tab键在以下位置之间移动键盘焦点:

  • 仅限文本框和列表
  • 所有控件

默认设置第一个选项。一旦更改为All控件,一切都按预期工作。