2015-05-26 63 views
0

我有一個FXML文件,用於在請求時允許用戶輸入。現在我只是把它放在一個新的階段,並做Stage.show()。我希望不會將它顯示在新窗口中,表現得更像是ContextMenu如何在JavaFX中使用FXML創建內部彈出窗口

看着ContextMenu類,它似乎沒有,我可以設置基於FXML文件的內容。有沒有辦法做到這一點ContextMenuPopup或我不知道的其他類?

回答

3

雖然這個庫很不錯,但我想要的東西很簡單,不需要第三方下載。我想出了這個:

Popup popup = new Popup(); 
CustomController controller = new CustomController(); 
FXMLLoader loader = new FXMLLoader(getClass().getResource(fxmlfile)); 
loader.setController(controller); 
popup.getContent().add((Parent)loader.load()); 

問題是我不知道,一個Parent可以考慮的方法Popup#getContent#add

一個 Node
0

ControlsFX有一個PopOver控件,你可能會喜歡。 PopOver可以爲其內容使用任何節點,因此您可以簡單地創建彈出窗口,從FXML加載節點並將彈出窗口的內容設置爲該節點。