5

NSTextField が選択されたときに色をリセットするという問題が発生しました。
私が使用している方法は

- (void) setBackgroundColor:(NSColor *)aColor 
- (void) setTextColor:(NSColor *)aColor

NSTextField をクリックしてそのテキスト フィールドにフォーカスを置き、色を変更しようとすると、フォーカスがそのテキスト フィールドの外に置かれるまで色がリセットされないことがわかりました。
それ以外の場合、フォーカスが最初から NSTextField にない場合、色の変更は機能しました。

4

1 に答える 1

3

ファーストレスポンダーにアクセスせずに見つけた簡単な解決策は、色を変更した後にボックスを編集可能/編集不可にリセットすることでした。

- (void) setEditable:(BOOL)flag

flag の値を NO に設定し、その後の 2 回の呼び出しで YES (または、使用状況に応じて YES と NO) を設定すると、NSTextField からフォーカスが削除されて元に戻り、色も更新されます。

お役に立てれば。

于 2013-05-10T19:24:55.127 に答える