2015-05-13 45 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