繁体   English   中英

将变量从一个jframe传递到另一个jframe而不关闭它们

[英]Passing variable from one jframe to another without closing any them

我正在制作数据库应用程序,我对这个问题持续了一个星期。 我也不确定如何在我的问题上发布标题,但我希望你能理解。 我有两个框架:城市和国家。

城市框架:

在此输入图像描述 国家框架:

在此输入图像描述

当我点击城市框架中的“搜索”按钮时,它会打开一个国家框架。 当我单击Country框架中的表时,它会通过此方法将选定行和列“Country”中的值传递给变量tableValCountry:

table.addMouseListener(new MouseListener(){

        @Override
        public void mouseClicked(MouseEvent e) {
            int selRow = table.getSelectedRow();

            String tableValCountry = (String)table.getValueAt(selRow, 1);
        }

        @Override
        public void mouseEntered(MouseEvent e) {
        }

        @Override
        public void mouseExited(MouseEvent e) {
        }

        @Override
        public void mousePressed(MouseEvent e) {
        }

        @Override
        public void mouseReleased(MouseEvent e) {
        }});

然后我想将tableValCountry变量传递给City框架,并通过单击添加按钮更新其中一个textfield。 我怎样才能做到这一点? 提前致谢。

PS我可以用getter和setter做到这一点,但我需要在City框架中有一些“获取”按钮来检索值(我不想这样做)。 并且City框架必须始终可见。

Swing的做事方式是让搜索面板实现一个getSelectedCountry()方法和一个在用户选择国家时通知的监听器列表。

当用户单击搜索时,您的主要组件将创建搜索面板并将其自身注册为搜索面板事件的侦听器。 事件处理程序将获取搜索面板的选定国家/地区并填充文本字段。

搜索面板实现只需在用户选择国家时通知其所有侦听器。

我认为这篇文章很好地涵盖了它。

请参阅使用多个JFrame,好/坏练习?

对于这个用例,模态对话框将是完美的。 在对话框设置为可见后,可以在该行中查询这些值。

我面临同样的问题,但我的替代解决方案是线程机制

暂无
暂无

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

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