2017-02-11 1 views
0

Tout mon code dans le fichier fxml est défini dans un volet d'ancrage et je me demandais s'il y avait un moyen simple d'autoriser la redimensionnement automatique de la scène entière lorsque la fenêtre est redimensionnée?(JavaFX) (SceneBuilder) Comment puis-je redimensionner automatiquement la scène lorsque la fenêtre est redimensionnée si tout est dans un AnchorPane?

FXML fichier:

<?xml version="1.0" encoding="UTF-8"?> 

<?import javafx.scene.image.Image?> 
<?import javafx.scene.image.ImageView?> 
<?import javafx.scene.layout.AnchorPane?> 

<fx:root maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" type="AnchorPane" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="csgocaseopener.InventoryController"> 
    <children> 
     <ImageView fitHeight="400.0" fitWidth="600.0" pickOnBounds="true"> 
     <image> 
      <Image url="@back.png" /> 
     </image> 
     </ImageView> 
     <AnchorPane layoutX="38.0" layoutY="65.0" prefHeight="270.0" prefWidth="525.0" /> 
     <ImageView fx:id="backbtn" fitHeight="45.0" fitWidth="45.0" layoutY="-1.0" onMouseClicked="#handleInventoryBack" pickOnBounds="true" preserveRatio="true" AnchorPane.leftAnchor="0.0" AnchorPane.topAnchor="-1.0"> 
     <image> 
      <Image url="@backbtn.png" /> 
     </image> 
     </ImageView> 
    </children> 
</fx:root> 
+0

Votre 'AnchorPane' est redimensionné lorsque vous redimensionnez la fenêtre. Dans un code donné, vous remplissez toute la scène avec l'image, donc je suppose que vous voulez redimensionner l'image pour remplir la fenêtre. – MBec

+0

Oui, je veux juste tout pour remplir la taille de la fenêtre – Tresk33

Répondre

0

Bind ImaveView ajustement à la propriété largeur/hauteur Stage propriété largeur/hauteur. Cette solution ne conservera pas le ratio d'image de sorte qu'elle sera déformée.

ImageView imageView = new ImageView(new Image(getClass().getResourceAsStream("test.png"))); 
//imageView.setPreserveRatio(true); //uncomment to keep image ratio. 
imageView.fitHeightProperty().bind(stage.heightProperty()); 
imageView.fitWidthProperty().bind(stage.widthProperty());