【发布时间】:2013-06-30 17:07:38
【问题描述】:
我正在尝试在 Cocoa (Mac OSX 10.8) 中执行我认为非常简单的任务,即将剪贴板中的字符串粘贴到 NSTextField 中。
我知道如何访问当前保存在剪贴板中的字符串,但我目前的问题是我无法确定我的 UI 中的 3 个文本字段中的哪一个已被选中。
尝试 1:
当执行“粘贴”命令时,询问每个文本字段“你被选中了吗?”,来自 iOS 开发者,我会这样做 [aTextField isFirstResponder],但 NSTextField 上不存在此方法,我不能找到一个等价物。
尝试 2:
When any of the 3 NSTextFields are selected, store that TF as the 'active' field, and when the user selects paste, paste the string in there.这里的问题是,如果我将控制器设置为文本字段的委托,并实现:
-(void)controlTextDidBeginEditing:(NSNotification *)obj {}
这仅在用户编辑文本时调用,而不是在他们刚刚选择它时调用(当用户想要粘贴到顶部时通常会发生这种情况),所以在这种方法中,我仍然不知道哪个文本当前选择了字段,因此选择了粘贴文本的位置。
有谁知道应该如何在 mac OSX 上完成这个简单的任务?我要做的就是允许用户将剪贴板中的一些文本粘贴到文本字段中!?
【问题讨论】:
标签: macos cocoa nstextfield