Alert 是 javafx 1.3 中的类,但在 javafx 2.1 中不是。那么什么是 javafx 2.1 中警报的替代品?
3 回答
特奥卡利是正确的。 警报对话框在 3.0 中进入平台,目前正在开发中。
JavaFX 2.2 支持在显示时暂停执行的对话框。这使得创建自己的警报实现(通过调用stage.showAndWait()
)非常简单。
(要访问此答案中的 JavaFX jira 链接,您可以在单击其中一个链接后注册 jira 帐户)。
Jonathan Giles(JavaFX 开发人员)指出:
由于时间不够,Dialogs 类(目前称为)没有进入 JavaFX 2.2。我刚刚将我的概念验证对话框类推送到 JavaFX Lombard(又名 3.0)存储库中,因此它可能包含在该版本中。虽然还有很长的路要走,但至少公共构建即将开始,您可以使用 JavaFX 3.0 构建开发您的应用程序并使用 API(并提供有关如何改进它的反馈)。
我创建了一个模态确认对话框示例。
Anton 创建了一个JavaFXDialog 项目。
对于它的价值,我认为目前 JavaFx 2.0 中不支持模态对话框,因此对于警报样式对话框也是如此。也许您会在这里找到更多信息:How to create and show common dialog (Error, Warning, Confirmation) in JavaFX 2.0?
我发现这个线程是少数提供用于 WebView 的 javafx 对话框示例的线程之一。我创建了以下有助于创建对话框的实用程序。下载以下文件,
并与 WebView 一起使用,如下所示:
webEngine.setPromptHandler(new Callback<PromptData, String>() {
@Override
public String call(PromptData arg0) {
JavaScriptDialog dialog = new JavaScriptDialog(stage, arg0.getMessage());
dialog.addPrompt(arg0.getDefaultValue());
dialog.addAcceptButton();
dialog.addRejectButton();
dialog.showAndWait();
return dialog.getPrompt();
}
});
可以对警报和确认进行类似的操作。在 WebView 对话框成为 JavaFX 的一部分之前,此代码只是权宜之计。它可能会得到改进,可能会有更好的选择,但这对我有用。如果您希望分享您的增强功能,请随时使用和调整并与我联系并提供补丁。
它改编自jewelsea提供的示例