คุณตั้งค่าข้อความใน NSTextField ได้อย่างไร?


138

ฉันพยายามตั้งค่าข้อความใน NSTextField แต่-setStringValue:และ-setTitleWithMnemonic:วิธีการใช้งานไม่ได้ ความคิดใด ๆ ?


NSTextField ของคุณอ้างอิงเป็น IBOutlet และแนบอย่างถูกต้องหรือไม่ (หากคุณใช้ Interface Builder นั่นคือ ... )
jlindenbaum

คำตอบ:


233

setStringValue:เป็นวิธีการทำ คุณควรตรวจสอบให้แน่ใจว่าเต้ารับของคุณได้รับการตั้งค่าอย่างเหมาะสม (ในดีบักเกอร์ตรวจสอบให้แน่ใจว่าตัวแปรฟิลด์ข้อความของคุณไม่เป็นโมฆะ)


23
วิธีทำใน Swift ก็แค่stringValueนั้นคุณสามารถตั้งค่าเป็นสตริงอะไรก็ได้ที่คุณต้องการ
Christopher Spencer


17

ใช้myLabel.stringValue = "MY TEXT"งานได้ที่นี่โดยใช้ Swift และ Xcode 6


นี่เป็นคำตอบที่ดีสำหรับสภาพแวดล้อมการพัฒนาล่าสุด Btw เหตุใดจึงไม่เป็นส่วนหนึ่งของเอกสาร NSTextField ฉันไปที่นั่นก่อนและคิดว่ามันจะชัดเจนจริงๆที่จะหาวิธีทำ แต่มันไม่ได้อยู่ที่นั่น ... แก้ไข: ฉันพบว่ามันไม่ได้อยู่ในตำแหน่งที่ชัดเจนของ "หัวข้อ" เพราะจริงๆแล้ว stringValue เป็น คุณสมบัติของ NSControl คลาสพาเรนต์และปรากฏใน "ภาพรวม"
wllychng

8

สวิฟต์ 4

self.yourTextField.stringValue = "Your_Value"

หมายเหตุ: การดึงค่าจาก self.yourTextField.stringValue ที่จะได้รับข้อความเตือนเช่น ข้อความเตือน เพื่อหลีกเลี่ยงคำเตือนประเภทนี้คุณสามารถใช้เช่นนี้ (วิธีที่แนะนำ)

DispatchQueue.main.async {
 your code ... 
} 

หรืออ้างถึงสิ่งนี้ด้วย


1

หากค่าที่คุณพยายามกำหนดเป็นจำนวนเต็มแทนที่จะเป็นสตริงคุณไม่จำเป็นต้องแปลงค่าจำนวนเต็มเป็นสตริงด้วยตนเอง คุณสามารถโทร:

myLabel.integerValue = i;

integerValueคุณสมบัติที่กำหนดไว้ในNSTextField's NSControlระดับผู้ปกครอง ดูหน้าเอกสารที่เชื่อมโยงสำหรับรายการวิธีการทั้งหมดที่รองรับ


0

วัตถุประสงค์ C:

[label setStringValue: @"I am a label"];

รหัสเดิมที่ฉันใช้ในรหัสเพื่อแสดงเวอร์ชันแอปพลิเคชันคือ:

    [lblVersion setStringValue:[NSString stringWithFormat:@"v%@", [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"]]];

-3

เพียงแค่ทำสิ่งนี้

[textField setString:@"random"];

2
ไม่ถูกต้อง. นี่คือวิธีการตั้งค่าไฟล์UITextField. คำถามเกี่ยวกับโกโก้ NSTextField ที่เป็นสัตว์ชนิดต่างๆ
เป็ด
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.