一个javaFX Stage可以是StageStyle.UTILITY和StageStyle.TRANSPARENT吗?

时间:2013-03-19 14:38:13

标签: javafx stage

我的意思是当使用stageStyle.UTILITY的舞台时,我不想显示“纯白色背景”,而是透明背景。

我需要一个阶段没有显示在windows的任务栏下面(stageStyle.UTILITY可以满足),我需要一个透明的背景(StageStyle.TRANSPARENT可以满足),这样我就可以定义我的关闭按钮样式了阶段。

但似乎很奇怪stageStyle.UTILITY或StageStyle.TRANSPARENT只适合我的一个请求。

谢谢。

5 个答案:

答案 0 :(得分:4)

已经好了! 还调用dialogStage.initOwner(parentStage) http://docs.oracle.com/javafx/2/api/javafx/stage/Stage.html#initOwner%28javafx.stage.Window%29

答案 1 :(得分:1)

是什么意思?

enter image description here

对背景有影响

带头代码

dialog.initModality(Modality.WINDOW_MODAL);

答案 2 :(得分:1)

在javafx中尚不可能,但javafx与swing兼容,所以你可以使用swing来制作相当于透明实用阶段的挥杆。有关示例,请参阅here。我希望这会有所帮助。

答案 3 :(得分:0)

final Stage stage = new Stage(StageStyle.TRANSPARENT);
Group rootGroup = new Group();
Scene scene = new Scene(rootGroup, 339, 319, Color.TRANSPARENT);
stage.setScene(scene);
stage.centerOnScreen();
stage.show();

答案 4 :(得分:0)

看这里 How can I remove my javafx program from the taskbar

只需添加(将其移出视线即可)

primaryStage.setX(Double.MAX_VALUE);
primaryStage.setY(Double.MAX_VALUE);

并替换

mainStage.initStyle(StageStyle.UNDECORATED);

mainStage.initStyle(StageStyle.TRANSPARENT);