繁体   English   中英

JavaFX设置MessageBox参数

[英]JavaFX set MessageBox parameters

我有一个JavaFX程序,它显示了一个简单的MessageBox。

箱类:

public class Box extends Application implements Runnable{



    private DialogFX dialog1 = null;

    private String message = null;
    private String type = null;
    private String title = null;

    public Box(){}

    public void ShowBox(String ptype, String ptitle, String pmessage){

        type = ptype;
        title = ptitle;
        message = pmessage;


    }

    public void run() {
        Application.launch();
    }

    public void start(Stage stage){

         dialog1 = new DialogFX();
         dialog1.setTitleText(title);
         dialog1.setMessage(message);
         dialog1.showDialog();


    }
}

此类使用DialogFX库创建并显示一个简单的消息框。 在该类中,有一个名为ShowBox的函数,该函数获取三个参数。 这些参数用于初始化消息框(标题,类型和消息)。 start()方法中,使用所需参数创建新的DialogFX对象。

我的问题是,当我创建Box类的新对象并设置三个字符串参数时,它们在start()方法中保持为空,并显示一个空对话框。

创建Box对象的示例类:

public class MessageFrame {


    private static Box b = null;

    public static void main(String[] args) {
        b = new Box();
        b.ShowBox("ACCEPT", "Title", "Message here");
        b.run();

    }
}

我希望你能帮助我。 可能是什么问题?

我不是JavaFX专家,但问题是实际上创建了两个Box实例,其中一个由您使用:

b = new Box();

调用时由JavaFX框架提供

Application.launch();

在您的run()方法中。 后一个实例将是您的应用程序(根本不使用您创建的第一个实例),并且未正确初始化(未在其上调用ShowBox(...) )。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM