[英]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.