【问题标题】:Implementing custom Ctrl+a in Objective-C在目标 c 中实现自定义 Ctrl+a
【发布时间】:2012-04-18 19:28:07
【问题描述】:

当用户单击 Ctrl+A(全选)时,如何实现修改后的行为。 我尝试修改 keyDown: 事件,但似乎没有捕捉到该事件。

【问题讨论】:

  • 您的意思是 ⌘+A,还是希望能够使用 ctrl+A?
  • 您需要确保视图控制器是第一响应者,否则它永远不会看到那些按键事件。

标签: objective-c cocoa events keydown ctrl


【解决方案1】:

+A 一般映射到第一响应者上的selectAll:。您应该能够在链中的任何响应者上简单地实现 selectAll: 方法,它会“正常工作”。

【讨论】:

  • 而NSTextView等标准视图已经会响应selectAll:和好友了,所以对于文本选择,你不需要做任何事情。
  • keyDown: 被调用,当我在其中记录窗口的第一响应者时,它与此视图相同,但未调用 selectAll:。想知道为什么。
  • 知道了,那是因为我没有在keyDown: 中调用super 的实现。
  • 回复太早了。即使使用相同的事件调用superkeyDown: 实现,selectAll: 也不会被调用。
  • 那是因为我将表格视图设置为不接受选择。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-06
  • 1970-01-01
相关资源
最近更新 更多