Obtenha valor de NSTextField

105

Eu tenho um NSTextFielde preciso colocar o valor do campo em uma variável. Qual é o método apropriado?

anakin
fonte

Respostas:

116

Para um NSStringvocê usaria:

NSString *myString = [theTextField stringValue];

Para um intvocê usaria:

int myInt = [theTextField intValue];

Existem muitos outros métodos para obter o valor de um controle. Dê uma olhada na NSControlreferência para obter mais informações, na seção "Obtendo e definindo o valor do controle" .

Aqui está uma lista:

  • doubleValue
  • floatValue
  • intValue
  • integerValue
  • objectValue
  • stringValue
  • attributedStringValue
toholio
fonte
5

Versão Swift 3.x:

myField.stringValue
Stanley
fonte
3

[myField stringValue]

NSTextFieldherda NSControle NSControldefine os métodos stringValue/ setStringvalue:.

NilObject
fonte
0

Além disso:

Digamos que você tenha um objeto ( MyObject) que deseja ser notificado quando alguém digitar um NSTextField. No arquivo .h, MyObjectdeve declarar que está em conformidade com NSTextFieldDelegate, como em ...

@interface MyObject : NSObject <NSTextFieldDelegate>

Em seguida, você define MyObject como o delegado do NSTextField

[myTextField setDelegate:myObject]

Agora, você pode descobrir quando algo acontece no campo de texto implementando métodos em MyObject como:

-(void)controlTextDidEndEditing:(NSNotification *)aNotification;
-(void)controlTextDidChange:(NSNotification *)aNotification;
-(void)controlTextDidBeginEditing:(NSNotification *)aNotification;
The Cappy
fonte