106

我有一个NSTextField,我需要将字段的值放入一个变量中。合适的方法是什么?

4

4 回答 4

117

对于NSString你会使用:

NSString *myString = [theTextField stringValue];

对于int你会使用:

int myInt = [theTextField intValue];

还有许多其他方法可以从控件中获取值。查看“获取和设置控件的值”部分NSControl下的参考以获取更多信息。

这是一个列表:

  • doubleValue
  • floatValue
  • intValue
  • integerValue
  • objectValue
  • stringValue
  • attributedStringValue
于 2009-06-12T05:55:43.953 回答
7

斯威夫特 3.x 版本:

myField.stringValue
于 2016-12-25T02:27:53.023 回答
3

[myField stringValue]

NSTextField继承自NSControl,并NSControl定义stringValue/setStringvalue:方法。

于 2009-06-12T05:45:52.883 回答
0

还:

假设您有一个对象 ( MyObject),当有人键入NSTextField. 在 .h 文件中,MyObject应声明它符合NSTextFieldDelegate,如...

@interface MyObject : NSObject <NSTextFieldDelegate>

然后将 MyObject 设置为NSTextField

[myTextField setDelegate:myObject]

现在,您可以通过在 MyObject 中实现方法来了解文本字段中何时发生某些事情,例如:

-(void)controlTextDidEndEditing:(NSNotification *)aNotification;
-(void)controlTextDidChange:(NSNotification *)aNotification;
-(void)controlTextDidBeginEditing:(NSNotification *)aNotification;
于 2013-05-29T23:51:53.513 回答