NSTextView - 如何检测它何时被点击?

时间:2013-10-26 23:07:50

标签: objective-c macos cocoa nstextfield

我正在尝试这样做:

- (IBAction)textFieldSelected:(id)sender
{
    printf("clicou no text\n");
}

我通过Interface Builder将其“连接”到我的NSTextField。

当我第一次启动应用时,此NSTextField已经集中。然后我点击第二个NSTextField,我的第一个失去焦点,我得到了print语句。在这些NSTextField之间来回点击我看到当我点击没有附加到NSTextField的NSTextField时刚刚调用了print语句。我相信,当第一个人失去焦点时,它就会发生。

Q1:当使用点击NSTextField时(获得焦点时),如何获得此print语句?

Q2:如何避免它在应用启动时自动获得焦点?

1 个答案:

答案 0 :(得分:1)

创建NSTextfield的自定义类,然后实现下面的方法,这样每当焦点转到下面的textfield时,方法就会被调用: -

   -(Bool)becomeFirstResponder{
     return YES}