繁体   English   中英

JavaFX全屏独占模式

[英]JavaFX Full Screen Exclusive Mode

我正在制作一个JavaFX自助服务终端应用程序,需要完全控制屏幕并禁止关闭,最小化和某些按键。 我想知道有没有办法让JavaFX应用程序以全屏独占模式运行,如果没有,有任何替代方案可以实现相同的目标。 我尝试过使用:

stage.setFullScreen(true);

它成功地使应用程序全屏,但用户仍然可以退出应用程序或退出全屏。

处理近距离事件。

以下代码可能有帮助!

//设置平台参数Platform.setImplicitExit(false);

primaryStage.setOnCloseRequest(new EventHandler<WindowEvent>() {
    @Override
    public void handle(WindowEvent event) {
// deque it
        event.consume();
    }
});

我最近有同样的问题,希望你能解决它(我不会等待4年的答案)。

如果不:

在调用stage.show()您需要调用setFullScreenExitKeyCombination并将KeyCombination.NO_MATCH作为唯一参数传递。

所以例如......

stage.setFullScreenExitKeyCombination(KeyCombination.NO_MATCH);
stage.show()

这样可以防止关闭和取消全屏显示(但仍然会以后门方式移除全屏 - Shift + PAUSE或F13):

scene.setOnKeyPressed((event) ->
{
  if (event.getCode() == KeyCode.PAUSE && event.isShiftDown())
    stage.setFullScreen(!stage.isFullScreen());
});
stage.setOnCloseRequest(Event::consume);
stage.setFullScreenExitKeyCombination(new KeyCodeCombination(KeyCode.F13));

要关闭应用程序,您必须在某些命令上添加Platform.exit()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM