NSTextFieldにテキストを設定しようとしていますが、-setStringValue:
および-setTitleWithMnemonic:
メソッドが機能していません。何か案は?
setStringValue:
はそれを行う方法です。コンセントが正しく設定されていることを確認する必要があります。 (デバッガで、textfield変数がnullでないことを確認してください。)
このようなことをしてください:
myLabel.stringValue = @"My Cool Text";
ただmyLabel.stringValue = "MY TEXT"
は、SwiftおよびXcode 6を使用して、ここで機能します。
Swift 4
self.yourTextField.stringValue = "Your_Value"
注:self.yourTextField.stringValueから値を取得すると、警告メッセージ、つまり この種の警告を回避するには、次のように使用できます(推奨される方法)
DispatchQueue.main.async {
your code ...
}
または this も参照してください。
設定しようとしている値が文字列ではなく整数である場合、整数値を手動で文字列に変換する必要はありません。あなただけを呼び出すことができます:
myLabel.integerValue = i;
integerValue
プロパティは、NSTextField
の親クラス NSControl
で定義されます。サポートされているメソッドの完全なリストについては、リンクされたドキュメントのページを参照してください。
ObjectiveC:
[label setStringValue: @"I am a label"];
アプリケーションバージョンを表示するためにコードで使用する元のコードは次のとおりです。
[lblVersion setStringValue:[NSString stringWithFormat:@"v%@", [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"]]];