JDialog 怎么传递参数给 JDialog

发布于 2021-11-06 14:44:21 字数 105 浏览 645 评论 6

    在JDialog 1中点击Button1生成JDialog 2,在JDialog 2 点击Button进行数据库操作,怎么将查询结果返回到JDialog1中呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

眉黛浅 2021-11-08 21:55:17

JDialog 1伪代码代码:

DataModel model = new DataModel();

Dialog2 dialog = new Dialog2(model );

dialog.setVisible(true);

doSomething(model);

加一个 Model不就搞定了,View只是一个载体,装什么东西你自己决定,这就是Model。MVC在swing中的体现是最鲜明的,鲜明的你看起来都绝对习以为常的。静态对话框是做的最爽的,但是隐患最大的。

伴我心暖 2021-11-08 21:52:58

弄一个桥梁类,把需要的引用都给丢进去,然后,单独的Dialog类,只负责和桥梁类通信,通过桥梁类引用其他对象(所谓的适配器模式???)。

拥有 2021-11-08 21:11:44

这跟Jdialog1 有什么关系呢,我在JDialog1中点击Button 1 生成JDialog 2 在生成的Dialog2消息框中点击Button 2 生成的数据要传回JDialog 1,您那样子做,我不是很理解,能详细点过程吗?谢谢。

夜血缘 2021-11-08 20:57:00

在JDialog 2里面添加一个属性,生成的JDialog 2的时候将属性的值赋好。

眉黛浅 2021-11-08 17:31:37

 

public class JDialog2 extends JDialog
{
    //初始化和其他
    public JDialog1 dlg1;//public只为了省事而已,维护了JDialog1的引用,可以与JDialog1通信了
    public void doWork(){
        //什么连接数据库啊之类的……
         dlg1.someMessage = "Result";//从数据库里取出的结果
    }
}
public class JDialog1 extends JDialog
{
    public String someMessage;//为了省事
    private JButton button1 = new JButton("Button1");
    public JDialog1() {
        //某些初始化
        button1.addActionListener(new ActionListener(){
            @Override
            public void actionPerformed(ActionEvent e) {
                onButton1Click(e);	
            }			
       });
    }
    private void onButton1Click(ActionEvent e)
    {
        JDialog2 dlg = new JDialog2();
        dlg.dlg1 = this;
        //其他
    }
}

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文