【问题标题】:Delete focus from toolbar item从工具栏项中删除焦点
【发布时间】:2011-09-28 19:08:11
【问题描述】:

我有一个带有自定义项目的工具栏。当我单击项目时,左侧项目获得焦点。如何从工具栏项中删除焦点?

【问题讨论】:

  • 当“全键盘访问”单选按钮“所有控件”被选中并且我打开其他应用程序的首选项窗口时,工具栏项目没有焦点。我认为我自己的应用程序有问题

标签: objective-c macos cocoa xcode4 nstoolbar


【解决方案1】:

您似乎已将“完全键盘访问”设置为“所有控件”。您可以按几次 Tab,直到焦点从工具栏项上移开。

如果您想禁用专注于文本框和列表以外的其他对象的功能(这样您就不能再专注于工具栏项目等),您可以通过两种方式做到这一点:1)按 Control + F7,或2) 转到系统偏好设置,键盘偏好面板,选择键盘快捷键选项卡,然后将“完全键盘访问”单选按钮从“所有控件”更改为“仅限文本框和列表”。

【讨论】:

  • 好的。这项工作,但是当“全键盘访问”单选按钮“所有控件”被选中并且我为其他应用程序打开“首选项”窗口时,工具栏项目没有获得焦点。我认为我自己的应用程序有问题...更多想法?
  • 嗯...我最初的直觉反应与 NSToobarItem 成为第一响应者有关(这使它变成了蓝色轮廓)。我正在制定另一个答案,但后来我发现 NSToolbar 和 NSToolbarItem 不是从 NSResponder 或 NSView 继承的。当你说“带有自定义项目的工具栏”时,你的意思是你已经继承了 NSToolbarItem 吗?如果是这样,您可以将此方法添加到您的子类中:-(BOOL)acceptsFirstResponder { return NO; }
  • 我没有继承 NSToolbarItem。我使用图像工具栏项对象并设置自己的图像...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-20
  • 1970-01-01
  • 2019-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多