J'essaie de changer la couleur de fond de mon champ de texte "Colorbox0" sur "Value0", mais il se débarrasse de la frontière.
Voici une version simplifiée de mon code:
static Paint value0 = Paint.valueOf("FFFFFF"); TextField colorBox0; colorBox0.setBackground(new Background(new BackgroundFill(value0, CornerRadii.EMPTY, Insets.EMPTY)));
4 Réponses :
Essayez de définir la couleur à l'aide de CSS:
TextField colorBox0; colorBox0.setStyle("-fx-background-color: white;");
Cela ne fonctionne pas. Cela change aussi les frontières. Pour tous ceux qui trouveront cette réponse.
Comme l'a découvert l'OP, en utilisant -fx-contrôle-interne-fond code> au lieu de
-fx-fond-couleur code> fonctionne cependant.
En regardant les styles Javafx par défaut (raccourcies) pour le de sorte que l'arrière-plan est un fond en couches incluant la bordure. Cette technique est utilisée beaucoup dans tout JavaFX. Mais il est très facile de modifier une seule couleur. P> Nous devons d'abord attribuer une nouvelle classe de style personnalisée à notre Textfield CODE> explique un lot:
Textfield code>: p>
.custom {
-fx-control-inner-background: orange;
}
Existe-t-il un moyen de définir la couleur d'arrière-plan sur la valeur de value0 car je veux pouvoir modifier la valeur0 et changer la couleur de fond
Changement de manière programmatique Ceci réinitialisera toutes les couleurs de fond. Mais vous pouvez aussi changer les couleurs du CSS au moment de l'exécution. Par exemple, en modifiant la classe de style ou un état de pseudo classe.
J'ai utilisé une version modifiée de votre CSS pour le réparer
J'ai trouvé que vous pouvez construire une chaîne de code CSS hors d'une chaîne et une variable en utilisant la méthode de chaîne et la méthode de sous-chaîne comme ceci:
Où avez-vous trouvé "-fx-control-inner-fond" de? Où est la référence officielle? Merci
Docs. oracle.com/cd/e17802_01/javafx/javafx/1.3/docs/api/...
Solution élégante avec la traduction couleur:
Wow, c'est frustrant ...