Get value from NSTextField

前端 未结 4 604
小蘑菇
小蘑菇 2020-12-12 21:49

I have an NSTextField and I need to get the field\'s value into a variable. What\'s the appropriate method?

相关标签:
4条回答
  • 2020-12-12 21:59

    Also:

    Say you have an object (MyObject) that wants to be be notified when someone types into a NSTextField. In the .h file, MyObject should declare it conforms to NSTextFieldDelegate, as in...

    @interface MyObject : NSObject <NSTextFieldDelegate>
    

    Then you set MyObject as the delegate of the NSTextField

    [myTextField setDelegate:myObject]

    Now, you can find out when something happens in the textfield by implementing methods in MyObject like:

    -(void)controlTextDidEndEditing:(NSNotification *)aNotification;
    -(void)controlTextDidChange:(NSNotification *)aNotification;
    -(void)controlTextDidBeginEditing:(NSNotification *)aNotification;
    
    0 讨论(0)
  • 2020-12-12 22:14

    [myField stringValue]

    NSTextField inherits from NSControl, and NSControl defines the stringValue/setStringvalue: methods.

    0 讨论(0)
  • 2020-12-12 22:17

    For an NSString you would use:

    NSString *myString = [theTextField stringValue];
    

    For an int you would use:

    int myInt = [theTextField intValue];
    

    There are many other methods for getting the value from a control. Have a look at the NSControl reference for more info, under the "Getting and Setting the Control’s Value" section.

    Here's a list:

    • doubleValue
    • floatValue
    • intValue
    • integerValue
    • objectValue
    • stringValue
    • attributedStringValue
    0 讨论(0)
  • 2020-12-12 22:23

    Swift 3.x Version:

    myField.stringValue
    
    0 讨论(0)
提交回复
热议问题