2015-05-13 75 views
1


我有點困惑,因爲我在我的一個大項目中使用Eclipse Luna,現在我正在使用JavaFX。 我想實現一個進程對話框,如圖here
這裏是一個棘手的部分,我的日食不承認,也不知道如何處理那幾個做得不好importat線JavaFx對話框無法解析

Dialogs.create() 
    .owner(stage) 
    .title("Progress Dialog") 
    .masthead("Searching for friends") 
    .showWorkerProgress(service); 

的第一個字在這代碼被強調和神祕

對話框不能得到解決

顯示爲我將鼠標懸停在它上面.. 我無法理解這個問題,因爲我在這個項目中使用了很多JavaFX,並且我沒有任何問題。警報,窗戶和所有類似的工作正常,只有這件事對我來說有點奇怪。
另外,我使用JavaFX ver 8.0.45-b11,它擾亂我的地方,我發現

JavaFX的從未有過對話的API,這似乎一直是一個 明顯的疏漏 - 但沒有更多的!它已經(最後!!!)決定, JavaFX 8u40將成爲第一個包含對話API的版本。

有人可以告訴我,如果有任何神祕的事情,必須使用此JavaFX Dialogs API做?

+0

您擁有的鏈接是使用ControlsFX對話框API,它是不屬於標準JavaFX API的第三部分API。 1.8.0_40中引入的標準JavaFX對話框API基於ControlsFX,但與它不一樣;特別是沒有'Dialogs'工具類。相反,有一個['Dialog'](http://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/Dialog.html)類和['Alert'](http: //docs.oracle.com/javase/8/javafx/api/javafx/scene/control/Alert.html)class:檢查Javadocs並從那裏開始工作。 –

回答

3

不需要使用第三方對話框。從此JavaFX Dialogs頁面學習如何使用原生jdk8u40 +的對話框。

+0

在編寫對話框邏輯時,使用此對話框中顯示的示例(http://download.java.net/jdk9/jfxdocs/javafx/scene/control/Dialog)將其寫成** lambda **方式。 HTML)。它顯示瞭如何將傳統的對話框構建邏輯轉換爲如下所示:dialog.showAndWait()。filter(response - > response == ButtonType.OK).ifPresent(response - > formatSystem()); – mohsenmadi