0

アプリケーション内の JComboBox の色を、非常に特殊なデフォルト以外の配色に変更するように依頼されました。

の値を変更すると、

System.UserInterface.Colors.SwingDefaults.ControlShadow

これからのリソースマップファイルの:

            <Color ident="ControlShadow" value="#999999"/>

これに:

            <Color ident="ControlShadow" value="#FFFFFF"/>

すべてが正常に見えます。

ただし、すべての Swing コントロールの ControlShadow Color を変更したくないので、より焦点を絞った修正を見つける必要があります。

JComboBoxes だけでこの色を変更する方法はありますか?

ComboBox.buttonShadow の値を (#FFFFFF に) 変更しようとしましたが、うまくいきませんでした。

4

1 に答える 1

1

リソースファイルで遊ぶべきではないと思います。

これを行う潜在的な方法については、 UIManager のデフォルトを確認してください。「システム カラー」を見て、「controlShadow」のデフォルト値を確認します。次にコンボ ボックスを見ると、「ComboBox.buttonShadow」に同じ値があることがわかります。おそらく、LAF のこの値を変更します。それ以外の場合は、カスタム コンボ ボックス UI を作成する必要があります。ソース コードを検索して、この値が使用されている場所を確認すると、何を変更すればよいかがわかります。

于 2011-01-04T22:38:51.887 に答える