ฉันมีNSTextFieldและฉันต้องการรับค่าของฟิลด์เป็นตัวแปร วิธีที่เหมาะสมคืออะไร?
ฉันมีNSTextFieldและฉันต้องการรับค่าของฟิลด์เป็นตัวแปร วิธีที่เหมาะสมคืออะไร?
คำตอบ:
สำหรับNSStringคุณจะใช้:
NSString *myString = [theTextField stringValue];
สำหรับintคุณจะใช้:
int myInt = [theTextField intValue];
มีวิธีการอื่น ๆ อีกมากมายในการรับค่าจากตัวควบคุม มีลักษณะที่เป็นNSControlข้อมูลอ้างอิงสำหรับข้อมูลเพิ่มเติมภายใต้หัวข้อ "การเดินทางและการตั้งค่าการควบคุมของ"
นี่คือรายการ:
doubleValuefloatValueintValueintegerValueobjectValuestringValueattributedStringValueเวอร์ชัน Swift 3.x:
myField.stringValue
[myField stringValue]
NSTextFieldสืบทอดมาจากNSControlและNSControlกำหนดstringValue/ setStringvalue:วิธีการ
นอกจากนี้:
สมมติว่าคุณมีวัตถุ ( 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;