[英]How to create a JavaFX dialog?
我需要在JavaFX中創建一個對話框。 我知道我可以通過修改模態,所有者和可調整大小的屬性使舞台表現得像一個對話框。
但是如何從舞台窗口隱藏“最小化”和“最大化”按鈕? 典型對話框只有“關閉”按鈕。
在Windows 7下,在顯示窗口之前初始化為StageStyle.UTILITY將創建一個僅包含關閉按鈕且沒有最小化或最大化按鈕的窗口:
Stage dialog = new Stage();
dialog.initStyle(StageStyle.UTILITY);
Scene scene = new Scene(new Group(new Text(25, 25, "Hello World!")));
dialog.setScene(scene);
dialog.show();
如果您想要一套完整的基本JavaFX對話框,我建議使用JavaFX UI沙箱對話框 。
JavaFX UI Sandbox不是由我創建的,並且不在我的站點上托管(源由Oracle托管)。 我請求Oracle記錄沙箱對話框API 。 如果您願意,您可以投票或評論該請求。
Makery的博客提供了沙盒對話框的一些最小的第三方文檔,包括基本用法示例以及JavaFX 2.2對話框部分的后端口。
更新
JavaFX UI Sandbox已被ControlsFX項目取代。
更新
Java 8u40將包含內置於核心平台API中的JavaFX對話框 。 您可以嘗試Java8u40的早期訪問版本 。 相關的類是javafx.scene.control.Dialog和它的相關子類,如javafx.scene.control.Alert(Alert類用於顯示類似於Swing的JOptionPane類的標准對話框 - 因此您不需要使用JOptionPane開箱即用標准對話框功能)。
Makery為Java 8u40中提供了一個關於對話功能的新博客教程 。
相關問題
您還可以嘗試我的方法來訪問Java FX 8的自定義對話框窗口。兩個:具有實際使用示例的源代碼和可運行的演示可在以下鏈接中找到:
https://github.com/bluevoxel/ChooseStage
它看起來如何:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.