Je suis actuellement en train de créer une petite application d'interface utilisateur à des fins personnelles et j'ai rencontré un problème. Voici un code:JavaFX: minHeight de la scène compte tenu de la hauteur de la barre de titre
public void start(Stage stage) throws Exception {
Parent root = FXMLLoader.load(getClass().getClassLoader().getResource("ui.fxml"));
Scene scene = new Scene(root);
stage.setTitle("My app");
stage.setScene(scene);
stage.setMinHeight(608.0);
stage.setMinWidth(1080.0);
stage.show();
}
Et voici le code FXML assiociated avec:
<GridPane gridLinesVisible="true" minHeight="608.0" minWidth="1080.0" xmlns="http://javafx.com/javafx/8.0.112" xmlns:fx="http://javafx.com/fxml/1" fx:controller="my.package.MyClass">
<rowConstraints>
<RowConstraints minHeight="500.0" prefHeight="500.0" vgrow="ALWAYS" />
<RowConstraints maxHeight="108.0" minHeight="108.0" prefHeight="108.0" vgrow="NEVER" />
</rowConstraints>
</GridPane>
Donc, mon problème est que, lors de son lancement, le GridPane aura pour effet une hauteur de 608px
mais est encore redimensionnable à une plus petite hauteur. En effet, il sera redimensionnable jusqu'au stade sera 608px
, y compris la hauteur de la barre de titre ...
Le comportement que je voudrais avoir est que mon GridPane ne peut pas avoir une hauteur inférieure à 608.0
.
Savez-vous des façons de faire cela? Merci beaucoup d'avance!
Il est un peu un hack, mais vous pouvez le faire 'stage.setMinHeight (stage.getHeight()); '(et de même pour la largeur) * après * vous appelez' stage.show() '. –
Merveilleux, ça marche! Merci beaucoup mec – Dayrona