【问题标题】:Javafx : Dialog pane referenceJavafx:对话框窗格参考
【发布时间】:2017-06-13 22:08:52
【问题描述】:

我有一个控制器,其中包含按钮,如果我按下一个按钮,Alert 会显示,带有是和否选项,我想为这个控制器类编写一个测试,测试这个Alert 的结果,对于例如,如果我按下是按钮会发生什么。我可以得到窗口/舞台和场景,但我怎样才能从弹出的控制器中得到Alert。那是primaryStage还是我真的不明白我怎样才能得到它。我查看了Alert 的层次结构,它与StageScene 没有任何关系,或者只是我没有观察到它。是否有可能获得Alert 或其按钮的引用?

【问题讨论】:

    标签: java javafx reflection javafx-8 alert


    【解决方案1】:
    Alert alert = new     Alert(AlertType.CONFIRMATION);
    alert.setTitle("Confirmation Dialog");
    
    alert.setHeaderText("Look, a     Confirmation Dialog");
    alert.setContentText("Are you ok with   this?");
    
    Optional<ButtonType> result =     alert.showAndWait();
    if (result.get() == ButtonType.OK){
    // ... user chose OK
    } else {
    // ... user chose CANCEL or closed    the dialog
    }
    

    上面的代码可以满足你的需要。

    Look here for more

    您可以随时查阅 java 文档。

    【讨论】:

    • 不,这段代码不适合我,我想你没有仔细阅读这个问题,我想使用反射从我的控制器获取Alert 的引用。
    • 假设你有:Alert alert = new Alert(AlertType.CONFIRMATION);可以通过以下方式访问对话框窗格:DialogPane dialogPane = alert.getDialogPane();...我希望对您有所帮助,因为我不太明白您的问题。
    • 我有 A 类,在那个类中我有 methodA(),它通过按下按钮显示我的 Alert,所以我使用反射按下按钮,所以我的 Alert 几乎会弹出如果我没有看到,那么我想获得对那个窗格、窗口的引用,不管它是什么。
    猜你喜欢
    • 2021-10-16
    • 2014-05-08
    • 2010-12-20
    • 2012-09-14
    • 1970-01-01
    • 2012-10-12
    • 2021-10-23
    • 2014-05-03
    • 1970-01-01
    相关资源
    最近更新 更多