如何在外接显示器上打开新舞台?

我有一台外接显示器插在笔记本电脑上。 我想在全屏,未修饰和模态模式下在这个外部屏幕上显示一个新Stage 。 我知道如何在纯Java / Swing组合中实现所有这些,但我坚持使用JavaFX实现这样的function。

我知道,有一个Screen API,我可以使用它来获取屏幕列表,说:

List allScreens = Screen.getScreens();

……但我不知道从哪里可以离开这里。

更新:2014年8月3日,22:21

我找到了解决问题的方法,所以我决定分享我的方法。 到目前为止,我还没有找到更好的解决方案。

 Button.setOnAction(new EventHandler() { @Override public void handle(ActionEvent ae) { List allScreens = Screen.getScreens(); if (allScreens.size() > 1) { Screen secondaryScreen = allScreens.get(1); Rectangle2D bounds = secondaryScreen.getVisualBounds(); Stage stage = new Stage(); stage.setX(bounds.getMinX()); stage.setY(bounds.getMinY()); stage.setWidth(bounds.getWidth()); stage.setHeight(bounds.getHeight()); stage.initStyle(StageStyle.UNDECORATED); stage.initModality(Modality.APPLICATION_MODAL); stage.show(); } else { Stage stage = new Stage(); stage.setFullScreen(true); stage.initStyle(StageStyle.UNDECORATED); stage.initModality(Modality.APPLICATION_MODAL); stage.show(); } } }); 

Interesting Posts