Как установить JavaFX Stage / Frame для максимизации
Я использую JavaFX 2. Я хочу, чтобы мой фрейм открылся максимально, но я не вижу способа. Я немного поискал в интернете, но безуспешно. Для сцены я вижу setFullScreen()
и setIconified()
но я не вижу ничего подобного setMaximized()
.
5 ответов
при оценке исходного кода ансамбля.jar, предоставленный с образцами JavaFX 2.0 SDK, в настоящее время действительный способ достижения максимизации окна
Screen screen = Screen.getPrimary();
Rectangle2D bounds = screen.getVisualBounds();
primaryStage.setX(bounds.getMinX());
primaryStage.setY(bounds.getMinY());
primaryStage.setWidth(bounds.getWidth());
primaryStage.setHeight(bounds.getHeight());
(вы найдете аналогичный код в WindowButtons.java)
кнопка "развернуть" по-прежнему включена, и при нажатии на нее windows будет расти немного больше (ОС Windows). После этого кнопка "развернуть" будет отключена. В приведенном примере стандартные кнопки заменяются. Может быть, это все еще вопрос.
реализация Java 8 класса Stage предоставляет развернутое свойство, которое может быть установлено следующим образом:
primaryStage.setMaximized(true);
лучше использовать мульти-экран совместимый увеличить логики:
// Get current screen of the stage
ObservableList<Screen> screens = Screen.getScreensForRectangle(new Rectangle2D(stage.getX(), stage.getY(), stage.getWidth(), stage.getHeight()));
// Change stage properties
Rectangle2D bounds = screens.get(0).getVisualBounds();
stage.setX(bounds.getMinX());
stage.setY(bounds.getMinY());
stage.setWidth(bounds.getWidth());
stage.setHeight(bounds.getHeight());
попробуйте этот простой код
primaryStage.setMaximized(true);
и он заполняет весь экран
. обратите внимание, что если вы удалите кнопки максимизации / минимизации, приложение заполнит весь экран, а также удалит панель задач, чтобы mnd ваши стили, Если у вас есть
используйте это, чтобы удалить кнопки минимизировать, максимизировать:
primaryStage.initStyle(StageStyle.UTILITY);
где primaryStage ваш объект Stage.