NSTextField
があり、フィールドの値を変数に取得する必要があります。適切な方法は何ですか?
NSString
の場合、次を使用します。
NSString *myString = [theTextField stringValue];
int
の場合、次を使用します。
int myInt = [theTextField intValue];
コントロールから値を取得する方法は他にもたくさんあります。 "コントロールの値の取得と設定" の下の詳細については、NSControl
リファレンスをご覧ください。
リストは次のとおりです。
doubleValue
floatValue
intValue
integerValue
objectValue
stringValue
attributedStringValue
[myField stringValue]
NSTextField
はNSControl
から継承し、NSControl
はstringValue
/setStringvalue:
メソッド。
Swift 3.xバージョン:
myField.stringValue
また:
誰かが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;