7

CSS では、以下を使用して何かに焦点を当てる効果を変更できます。

.myelement:focus { ... }

Cocoa を使用している間、テキスト フィールドは常に醜い青い輝きを放っています。NSTextField に焦点を合わせた場合の効果を変更するにはどうすればよいですか (または、何も行わないようにします)。

4

1 に答える 1

16

上記のコマンドに相当する Cocoa は次のようになります。

[[textField window] makeFirstResponder:textField];

外観の変更に関して、すべてのアプリケーションのすべてのコントロールに対して (「グローバルに」)、それとも自分のアプリのテキスト フィールドに対して変更する方法を尋ねていますか? グローバルな変更のための API はないため、システムのハッキングが唯一の手段です。幸運を。

所有するコントロール (独自のアプリケーションに属するもの) については、フォーカス リングのタイプを Interface Builder で設定するか、実行時に次のようなコードで設定できます。

[textField setFocusRingType:NSFocusRingTypeNone]; 
// (or NSFocusRingTypeDefault or NSFocusRingTypeExterior)
于 2012-06-07T21:20:40.150 に答える