1
我在我的Cocoa应用程序中有一个TextField。这个TextField有时会被填充并且有时是空的。可可通知,如何观察事件?
我想要它,所以当字段为空时,一个按钮被禁用。现在,只要我从CoreField获取其值的地方对Core Data进行一些操作,就会检查该字段。
我希望它总是被检查。
我在我的Cocoa应用程序中有一个TextField。这个TextField有时会被填充并且有时是空的。可可通知,如何观察事件?
我想要它,所以当字段为空时,一个按钮被禁用。现在,只要我从CoreField获取其值的地方对Core Data进行一些操作,就会检查该字段。
我希望它总是被检查。
如果用户编辑文本字段并调出字段编辑器,则可以使用以下内容。
你可以实现NSTextFieldDelegate协议(这实际上只是NSControlTextEditing协议)。例如,在控制器或委托对象中实现control:textShouldEndEditing:
方法,并使用它来检查新字符串的值。如果字符串为空,则禁用该按钮。
// In a control object which has a reference to the NSTextField and the NSButton
- (BOOL)control:(NSControl *)control textShouldEndEditing:(NSText *)fieldEditor {
if ([fieldEditor.string isEqualToString:@""])
{
[self.button setEnabled:NO];
return YES;
}
[self.button setEnabled:YES];
return YES;
}
更新:我现在不约CodeData该位。在这种情况下,你应该按照下列指示,Disable/Enable NSButton if NSTextfield is empty or not,
另一种方法是给控制器的特性暴露 串
value
,绑定文本字段的值绑定到这个stringValue
属性,绑定按钮的enabled
绑定到控制器的stringValue.length
。