La couleur du texte sur JavaFX zone de liste déroulante d'éléments de changer seulement après la première sélection

Je fais construire un formulaire de saisie en JavaFx à partir de Java 8.0 à l'aide SceneBuilder 2.0 sur Windows 7 e(fx)clipse.

J'ai une Chaîne simple zone de liste déroulante, et que vous voulez changer la couleur et la taille des polices dans la liste et de la Chaîne sélectionnée. Le code css, j'utilise modifie le texte de l'élément sélectionné. Cependant, la première fois que l'on supprime la liste, il est en noir de la police par défaut. La deuxième fois, la couleur de police et la taille de tous les éléments ont changé pour les valeurs correctes.

Comment puis-je faire la liste des polices démarrer dans la bonne couleur et la taille?

Ici est simplifié le code de la méthode initialize dans ma classe de Contrôleur:

ObservableList<String> types = FXCollections.observableArrayList
    ( "large", "medium", "small" );

comboBox.setItems( types );

et css:

#comboBox .list-cell
 {
    -fx-font-family: arial;
    -fx-font-size: 16px;
    -fx-text-fill: #a0522d; 
 }
  • Juste une suggestion, essayez de combo.show() et combo.hide() dans la Plate-forme.runLater, à l'application de démarrage.
  • Bonne idée, mais il ne fonctionne pas. Bizarrement, je peux préréglage de la famille de police et de la taille à l'aide de zone de liste déroulante.setStyle(), mais le préréglage de la couleur ne fonctionne pas comme dans la zone de liste déroulante.setStyle( "-fx-texte-fill: #a0522d;" );.
InformationsquelleAutor MantaMan | 2014-07-09