gpt4 book ai didi

java - 这个 Swing 代码是如何工作的?

转载 作者:搜寻专家 更新时间:2023-10-31 20:29:08 25 4
gpt4 key购买 nike

我在 Java/Swing GUI 项目中看到以下代码:

MyDialog dlg = new MyDialog(parent, isFizz);
MyDialogResults results = dlg.getResults();

eventBus.fireEvent(new MyDialogEvent(results));

在上面的代码中,MyDialog extends JDialog。很明显,正在构建一个子对话框(并以某种方式显示给最终用户),然后当用户退出该对话框时(通过单击“确定”或其他按钮),一个results bean 用于在事件总线上触发一个新事件。

但我正在为两件事而苦苦挣扎:

  1. 如何/在哪里告诉 Java 实际绘制/向用户显示对话框?;和
  2. 在将事件发送到总线之前,Java 如何/在哪里被告知挂起/等待用户退出对话框?

是否 JDialog 子级在创建 JDialog 时始终显示对话框,并且在对话框退出之前不会从构造函数返回?这是上面的 hte MyDialog 构造函数的概要:

public class MyDialog extends JDialog {
private boolean isFizz;
private MyDialogResults results;

// Getters and setters for all properties...

public MyDialog(Frame parent, boolean isFizz) {
super(parent, "My Dialog", true);

setIsFizz(isFizz);

setVisible(true);
dispose();
}
}

提前感谢您提供帮助/了解对话框如何打开、“挂起”(尽管我知道它实际上并没有挂起/卡住)、关闭,然后触发事件。

最佳答案

1)

setVisible(true);

2)

super(parent, "My Dialog", true);

阅读 JDialog 的 JavaDocs 以获取更多详细信息。

最相关的是:

关于java - 这个 Swing 代码是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16282289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com