Я не могу понять, как расположить ImageViews на панели без изменения его размера.
Это мой файл f xml:
<BorderPane fx:id="borderPaneVersusMain" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="600.0" prefWidth="900.0" xmlns="http://javafx.com/javafx/8.0.121" xmlns:fx="http://javafx.com/fxml/1" fx:controller="Controller">
<left>
<VBox fx:id="leftMenu" maxWidth="150.0" minWidth="150.0" prefWidth="150.0" BorderPane.alignment="CENTER">
<children>
<TilePane>
<children>
<Button fx:id="btnSettings" mnemonicParsing="false" onAction="#loadSettingsScene" text="Settings" />
<Button fx:id="btnExit" mnemonicParsing="false" onAction="#quitApplication" text="Exit" />
<Button fx:id="btnUpdate" mnemonicParsing="false" text="update" />
<Label text="TS" />
</children>
</TilePane>
<ImageView fx:id="tS" fitWidth="150.0" pickOnBounds="true" preserveRatio="true">
<image>
<Image url="@../images/tF.jpg" />
</image>
</ImageView>
</children>
</VBox>
</left>
<center>
<AnchorPane styleClass="versus" stylesheets="@../styles/style.css" BorderPane.alignment="CENTER">
<children>
<Pane fx:id="table" style="-fx-background-color: GREEN;" AnchorPane.bottomAnchor="10.0" AnchorPane.leftAnchor="10.0" AnchorPane.rightAnchor="10.0" AnchorPane.topAnchor="10.0" />
</children>
</AnchorPane>
</center>
</BorderPane>
Панель с таблицей идентификаторов заполнены ImageViews (картами), которые я хочу расположить абсолютно по отношению к самой панели.
Для этого я хочу, чтобы панель меняла размер только при изменении размера окна. Я хотел бы расположить ImageViews в зависимости от расстояния до границ, например, некоторые карты должны go к левой границе, некоторые к правой границе, некоторые вверх, а некоторые вниз.
Но в любое время я пытаюсь Для этого размер панели автоматически изменяется ... Я не могу установить maxWidth и maxHeight, потому что тогда размер панели больше не соответствует размеру окна.
Как я могу это сделать?
I используйте простую панель, а не BorderPane, потому что я хочу создавать непохожую анимацию от середины к сторонам, и переключение с панели может предотвратить это.
Должно быть что-то вроде:
ImageView iv = new ImageView(image);
iv.setLayoutX( table.getWidth/2 );
iv.setLayoutY( table.getHeight/2 );
установить изображение в середине панели. Это не работает, хотя и после этого. Размер панели изменяется, поэтому следующее изображение будет недоступно.
Большое спасибо. Я надеюсь, что кто-то может помочь мне здесь <3 </p>
Jiefu