Est-il possible de définir une propriété statique JavaFX en CSS ?
-
12-12-2019 - |
Question
Exemple de FXML avec BorderPanel.alignment "propriété statique":
<BorderPane>
<top>
<Label text="My Label" BorderPanel.alignment="CENTER"/>
</top>
</BorderPane>
La version prise en charge par CSS :
<BorderPane stylesheets="Style.css">
<top>
<Label text="My Label" styleClass="labelClass"/>
</top>
</BorderPane>
Style.css serait :
.labelClass
{
-fx-borderpanel-alignement: center
}
La solution
pour les versions JavaFX 2.0 à 2.2=> Non, vous ne pouvez pas définir les propriétés de la disposition statique via CSS.
Vous pouvez créer une demande de fonctionnalité dans le Javafx Jira pour poser cette fonctionnalité être mise en œuvre dans un futur JavaFXversion.
Autres conseils
Vous pouvez l'appliquer par programme.Par exemple si vous souhaitez centrer tous les widgets d'un GridPane
, au lieu d'écrire GridPane.halignment="CENTER"
dans la déclaration XML de chaque widget, vous pouvez faire ceci en Java :
for(Node node : gridPane.getChildren())
{
GridPane.setHalignment(node, HPos.CENTER);
}
Malheureusement, je ne pense pas que vous puissiez factoriser les mises en page comme dans Android :(