2017-01-17 32 views
3

コンボバーのドロップダウンメニューをカスタマイズしたいと思います。次の画像を見るenter image description hereJavaFx ComboBoxはドロップダウンメニューをカスタマイズします

青いホバーバー、ホバーされたテキストの色、テキストのフォント、およびデフォルトのテキストのフォントを変更したいと思います。

ありがとうございました。

-UPDATED-

私が唯一のみ展開されたメニューを変更している。この

comboBox.setStyle("-fx-background-image: url('" + ImageUtils.getPath() + "fieldTextBkg.png');" 
      + "-fx-text-box-border: transparent;" 
      + "-fx-background-color: transparent, transparent, transparent, transparent;" 
      + "-fx-text-alignment: center;"); 

を達成しました。内側のドロップダウンリストを変更するために何をしようとしていても、私は達成することはできません。例えば、青色のバーを緑色に変更することができます。全体の背景は白ではなく黒で、テキストはフォントであるカリブリである。

ありがとうございます。

+0

.html#cell)。あなたの質問をどのように変更したいのかを記述する[編集]、あなたが試したことを示し、期待どおりの結果がどういうものかを説明してください。 –

+0

申し訳ありません@James_D、更新済み – user2805346

+0

コンボボックス自体ではなく、セルのスタイルを設定する必要があります。外部スタイルシートでのみ行うことができます(インラインスタイルではありません)。 –

答えて

4

あなたはあなたのアプリケーションのための外部CSSファイルに次のように配置することによって、ポップアップ内のセルのスタイルを変更することができます。

.combo-box .combo-box-popup .list-view, .combo-box .combo-box-popup .list-cell { 
    -fx-background-color: black ; 
    -fx-text-fill: white ; 
    -fx-font-family: "Calibri" ; 
} 
.combo-box .combo-box-popup .list-cell:hover { 
    -fx-text-fill: yellow ; 
    -fx-background-color: green ; 
} 

あなたが選択したセルのための疑似クラス:selectedを使用することができます。 (すなわち、.combo-box .combo-box-popup .list-cell:selected { ... })。

あなたはコンボボックス「ボタン電池」(すなわち、ポップアップで表示されていない1)セレクタでは

.combo-box > .list-cell { /* ... */ } 

より多くのオプションのためのデフォルトのスタイルシートについてCSS documentationあるいはsource codeを参照のスタイルを設定することができます。

+0

ありがとうございました。これは働いています! – user2805346

5

ここではいくつかの解明です:あなたは、[CSS](http://docs.oracle.com/javase/8/javafx/api/javafx/scene/doc-files/cssrefでこれを行う

/*Edit The control itself*/ 
.combo-box{ 

-fx-background-color:purple; 

} 

/*Edit Normal Cell color */ 
.combo-box .list-cell{ 

-fx-background-color:red; 


} 

/*Edit Cell Color Only when cursor hover cell */ 
.combo-box .list-cell:hover{ 

-fx-background-color:green; 
} 

/*Edit Cell Color Only when selected */ 
.combo-box .list-cell:selected{ 

-fx-background-color:blue; 

} 
+0

ありがとうございました。これは完璧です! – user2805346

+0

実際にはJames_Dはそれに値する:) –

+1

もし私ができるなら、私は両方を受け入れるだろう。ありがとうございます – user2805346

関連する問題