Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaFX未装饰窗口,Windows 10边缘最大化事件_Java_Windows_Javafx - Fatal编程技术网

JavaFX未装饰窗口,Windows 10边缘最大化事件

JavaFX未装饰窗口,Windows 10边缘最大化事件,java,windows,javafx,Java,Windows,Javafx,在例如windows 10中将窗口拖动到屏幕边缘时,窗口将最大化。例子: 但是,当我使用未修饰的javaFX应用程序执行此操作时,它不起作用: 在JavaFX中我将如何做到这一点 下面是我用来移动窗口的代码: double xOffset = 0; double yOffset = 0; layout.setOnMousePressed(event -> { xOffset = event.getSceneX(); yOffset = event.getSceneY(

在例如windows 10中将窗口拖动到屏幕边缘时,窗口将最大化。例子:

但是,当我使用未修饰的javaFX应用程序执行此操作时,它不起作用:

在JavaFX中我将如何做到这一点

下面是我用来移动窗口的代码:

double xOffset = 0;
double yOffset = 0;

layout.setOnMousePressed(event ->
{
    xOffset = event.getSceneX();
    yOffset = event.getSceneY();
});
layout.setOnMouseDragged(event ->
{
    window.setX(event.getScreenX() - xOffset);
    window.setY(event.getScreenY() - yOffset);
});

如果event.getScreenY()值为0,您就不能检查它,然后自己最大化您的窗口吗?@GAlexMES,这在特定情况下适用,还有其他一些事情,比如当你将窗口移到屏幕一侧时,它会使屏幕的一半变凹,并要求用户选择另一个窗口来覆盖另一半。@WhiteFault你不能这样做,至少不能以跨平台的方式。当您取消装饰窗口并自己创建标题栏时,您将覆盖windows提供的本机栏。@GAlexMES您是正确的。我猜O.P可以使用windows本机库,但我不知道有哪个库可以像他那样做requires@GAlexMES嗯,据我所知没有。无论如何,这不是java的问题,因为要在1
OS
上修复某些东西,您不能在其他操作系统上破坏代码。