Постоянно развернутое окно JavaFX

Как следует из названия, я хочу создать окно в JavaFX и сделать его постоянно максимальным (т.е. полноэкранным).

Это пример кода, который выдает ошибку... ну, неожиданное поведение.

public class Resize extends Application {

    @Override
    public void start(Stage primaryStage) {

        StackPane root = new StackPane();

        Scene scene = new Scene(root);

        primaryStage.setMaximized(true);
        primaryStage.setResizable(false);
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        launch(args);
    }

}

Обратите внимание на setMaximized и setResizable. Все работает до тех пор, пока... я не нажимаю (WinKey+DownArrow), после чего мое окно становится изменен размер, и я не могу снова развернуть его. Я запускаю код из NetBeans в Windows 10.

Вот скриншот. скриншот.


person Marebre8    schedule 08.08.2017    source источник
comment
попробуйте добавить setFullScreen(true) на первичную сцену   -  person yamenk    schedule 08.08.2017
comment
Это исправило... но теперь я могу нажать ESC, и размер снова изменится. Есть ли способ сделать мое приложение либо полноэкранным, либо свернутым, но никогда не оконным?   -  person Marebre8    schedule 09.08.2017


Ответы (1)


Вы можете заставить приложение быть либо полноэкранным, либо свернутым, но никогда не оконным, согласно вашему комментарию, сначала выполнив

primaryStage.setFullScreen (истина);

а затем отключить возможность выхода из полноэкранного режима, выполнив

primaryStage.setFullScreenExitKeyCombination(KeyCombination.NO_MATCH);

person Matthew    schedule 05.05.2018