cocoa - 我应该使用哪种委托(delegate)方法来响应 NSTextField 上的点击?

标签 cocoa macos nstextfield

我正在尝试响应文本字段内的点击。当点击发生时,我将打开一个面板。我最初的想法是使用 delegate 方法来响应 click 事件 - 但我发现:

此方法不起作用:

(void)textDidBeginEditing:(NSNotification *)aNotification

此方法确实有效,但只有当我实际编辑文本字段中的文本时,而不是当我第一次单击它时。并且 - 如果我第二次编辑文本,此方法将停止工作:

(void)controlTextDidBeginEditing:(NSNotification *)aNotification
<小时/>

理想情况下,我可以使用尽可能多的细节 - 或者代码示例。我知道 nstextfield 继承自 NSControl,它有一个 mouseDown 事件。是否也有类似的方法来使用 textfield 响应事件?

最佳答案

由于 NSTextField 继承自 NSControl 类,因此它也继承了 -(void)mouseDown:(NSEvent*) theEvent 方法。

关于cocoa - 我应该使用哪种委托(delegate)方法来响应 NSTextField 上的点击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/684166/

相关文章:

python - 切换 Homebrew 安装的 Python 版本

macos - 如何使用 NSFormatter 对 NSTextField 中的输入进行着色?

cocoa - 在 Grand Central Dispatch 中使用 dispatch_sync

NSTableView Cell发起的Cocoa QuickLook

.net - dotnet --version 给出 "the folder [/usr/local/share/dotnet/host/fxr] does not contain any version-numbered child folders"

swift - OS X 应用程序用逗号转换文本字段导致双值问题

objective-c - 更改 NSTextField 的边框颜色

iphone - 如何在 iOS 上构建缓存目录的路径?

cocoa - NSTableView 重新排序时处理选定的行

macos - 如何在 Swift 中使用 NSTask