2012-10-01 82 views
4

我認爲mIRC的以下屏幕截圖將幫助您理解我的問題。是否可以在JavaFX2的主窗口區域中創建多個子窗口?

multiple subwindows in mIRC

我有一個主階段(1),並且在一些窗格(或任何其它容器)(2),我想以這樣的方式添加多個子窗口(3),以便它們不能移到擁有窗口之外並且它們在OS任務欄中不可見/可選。

有沒有辦法在JavaFX 2.2中做到這一點? 如果不與窗戶(單獨的階段),是否可以與任何其他可移動容器?

回答

2

JavaFX 2.2中沒有框架來促進這一點。

您可以使用JavaFX問題跟蹤器跟蹤併爲JavaFX Docking Framework功能請求投票。

您可以使用公共JavaFX API自行創建這樣的框架。使用階段,可能有點難以準確地獲得你想要的行爲,但我認爲如果你使用了定製在你的主應用程序階段的可移動窗格,這將是可能的。但是,除非提供正式的對接框架實現,否則最好使用NetBeans等現有應用程序框架並將您的JavaFX組件嵌入到JFXPanels within frames created by the existing framework中。

回答您的一些具體問題。

在OS任務欄中不可見/可選。

在顯示新的子窗口之前,調用子窗口。 initOwner將子窗口的所有者設置爲應用程序的主要階段。

它們不能擁有窗口

你可以添加聽衆到子窗口的X,Y,寬度和高度屬性和主窗口之外移動。在偵聽器代碼中,如果試圖將它們移動到父窗口邊界之外,請重新定位子窗口。如果在您的JavaFX偵聽器收到通知(我認爲可能是這種情況)之前,操作系統處理大小和位置更改通知,則此策略可能會有點笨拙。

+0

謝謝,雖然它有點令人失望,JavaFX似乎在目前有限 – Itako

1

請參閱VFXWindows項目。它允許您在JavaFX應用程序中創建窗口和子窗口。它作爲JFXtras 2包的一部分提供。

相關問題