2017-07-02 34 views
0

我创建了一个未装饰的透明舞台,并且总是在最高标志 中设置为true,并且希望将其用作游戏的叠加层。游戏处于窗口全屏模式,这是在Windows 10上。另一个全屏应用程序中的JavaFX覆盖

当游戏窗口在没有JavaFX覆盖游戏的情况下处于活动状态时,不会显示任务栏。但是,只要我将JavaFX叠加在游戏上,任务栏就会弹出。

我想知道是否有任何方法可以在没有任务栏显示的情况下将它用作游戏的叠加层。

回答

1

您可能能够达到您想要的效果(覆盖全屏游戏),但不是您尝试的方式(永远在顶部标志设置为真的未装饰透明舞台)。

如果你想要类似于Steam或Fraps覆盖图的东西,那么你必须实施一些dll注入。 Java本身不允许你这样做,你必须为它使用一个C/C++模块。

下面是Xfire's overlay works的一些解释,以帮助您了解背后的过程。 此外,这是一个DX9 overlay library可以帮助你,因为它包括一个Java包装和一些例子。但请记住,它可能不适用于更新版本的DirectX和OpenGL,因此不适用于所有游戏,但仍可以作为示例帮助您。

0

好,但并不总是工作液:

setAlwaysOnTop(true) 

谷歌搜索 - >秋千 - > JFrame的 - >总在最前等上全屏幕应用程序的工作100%。 Next action - >

SwingNode sn = new SwingNode(); 
JFrame jp = new JFrame(); 
sn.setContent(jp); 

//next AnchorPane (JavaFX) 
anchorPane.getChildren().add(swingNode); 
+0

用户询问JavaFX,对不对?那么,你为什么要提供摆动解决方案? – Martin

+0

我补充了为什么在后 –