CSS
Classe principale bascule commutateur:Est-il possible de contrôler les valeurs des champs non-couleur par consultation?
.toggle-switch {
radius: 16;
thumb-area-background-color: rgba(255, 255, 255, 1);
thumb-area-border-width: 2;
thumb-area-border-color: #d9d9d9;
}
et le pouce zone classe enfant :
.thumb-area {
-fx-background-radius: radius;
-fx-border-radius: radius;
-fx-background-color: thumb-area-background-color;
-fx-border-width: thumb-area-border-width;
-fx-border-color: thumb-area-border-color;
}
Les champs -background-color pouce zone и thumb-area-border-color, responsable de la couleur, changer parfaitement du code et sont traités sans erreur:
toggleSwitch.setStyle("thumb-background-color: " + getRGBAString(color));
toggleSwitch.setStyle("thumb-area-background-color: " + getRGBAString(color));
Mais les champs rayon и -zone-largeur frontière pouce, ne sont pas traitées! Lorsque je démarre le programme, la console affiche:
WARNING: Caught 'java.lang.ClassCastException: java.lang.Double cannot be cast to com.sun.javafx.css.Size' while converting value for '-fx-background-radius' from rule '*.thumb-area' in stylesheet file:/...
*date* javafx.scene.CssStyleHelper calculateValue
WARNING: Caught 'java.lang.ClassCastException: java.lang.Double cannot be cast to com.sun.javafx.css.Size' while converting value for '-fx-border-radius' from rule '*.thumb-area' in stylesheet file:/...
*date* javafx.scene.CssStyleHelper calculateValue
WARNING: Caught 'java.lang.ClassCastException: java.lang.Double cannot be cast to com.sun.javafx.css.Size' while converting value for '-fx-border-width' from rule '*.thumb-area' in stylesheet file:/...
*date* javafx.scene.CssStyleHelper calculateValue
Le chemin vers le fichier et la date sont supprimés.
Est-il possible de contrôler les valeurs des champs non-couleur avec -up regardé ou s'il n'y a pas une telle option, comment mieux changer ces valeurs par programmation à partir du code sans écraser champs css (lorsqu'il est utilisé par exemple setStyle pour thumbArea toutes les valeurs de classe css pouce zone sont perdus)
La façon de faire tous les champs par programmation en utilisant setSt ylene correspond pas à.
Si vous changez «rayon: 16» à «rayon: 16 16 16 16», obtenez-vous la même erreur ou une erreur différente? – MMAdams
Cela n'aide pas + dans mon exemple, j'ai écrit que l'erreur se produit également en essayant de définir la largeur. –