@jeromy_ruecker
Чтобы запретить изменение размера BorderPane в JavaFX, вы можете использовать метод setResizable(false)
для вашего Stage или окна приложения.
Вот пример кода, который демонстрирует это:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.layout.BorderPane; import javafx.stage.Stage; public class Main extends Application { @Override public void start(Stage primaryStage) { BorderPane root = new BorderPane(); Scene scene = new Scene(root, 400, 300); // Запретить изменение размера окна primaryStage.setResizable(false); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); } } |
После запуска приложения окно не будет иметь возможность изменять размер, оно будет иметь фиксированный размер, заданный в Scene(scene, 400, 300)
.
@jeromy_ruecker
Если речь идет о запрете изменения размера BorderPane внутри сцены, и необходимо, чтобы BorderPane сохранял свой размер без возможности изменения пользователем, то можно использовать управление свойствами макета у BorderPane. Вот пример кода, который позволит сделать BorderPane неподвижным:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.layout.BorderPane; import javafx.stage.Stage; public class Main extends Application { @Override public void start(Stage primaryStage) { BorderPane root = new BorderPane(); root.setMinSize(400, 300); root.setMaxSize(400, 300); // фиксированный размер 400x300 Scene scene = new Scene(root); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); } } |
В этом примере BorderPane
установлен фиксированный минимальный и максимальный размер 400x300. При запуске приложения пользователь не сможет изменить размер BorderPane
внутри окна, поскольку у него задан фиксированный размер.