【问题标题】:How can i forbid tab switching the focus into a NSView control如何禁止选项卡将焦点切换到 NSView 控件
【发布时间】:2010-10-18 04:57:57
【问题描述】:

我的主窗口中有一个侧边栏 NSOutlineView。我希望用户能够切换 在主窗口中的所有视图中用 tab 键聚焦,但他不应该用 tab 键给 NSOutlineView 聚焦。

我知道

- (BOOL)canBecomeKeyView { return NO; }
- (BOOL)acceptsFirstResponder { return NO; }

我可以禁用视图的焦点,但这会完全禁用视图。我希望用户能够使用源列表中的键(通过单击列表)。只需将源列表从 Tab 键顺序中移出即可。

还有一个热键以编程方式为源列表提供焦点,如果我设置使用上述功能,这也不起作用。

正确的做法是什么?

【问题讨论】:

    标签: cocoa macos focus nsview


    【解决方案1】:

    找出哪个视图将此视图作为其nextKeyView,并将其nextKeyView 设置为其他值。然后对previousKeyView 执行相同的操作,这样用户就不能 *shift-*tab 进入它。

    【讨论】:

      猜你喜欢
      • 2016-04-15
      • 2015-12-21
      • 1970-01-01
      • 2019-09-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多