怎么把 一个方法中的JTextField 局部变量传递到下一个方法进行修改 条件是:不用全局变量!!!
例如:
public HashMap fy_tw(){
JFrame f=new JFrame("调温费和取暖费明细查询");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(400, 200);
f.setResizable(false);
f.setLocationRelativeTo(null);
JPanel p1=new JPanel();
JLabel l_zyh=new JLabel("住院号");
JTextField t_zyh=new JTextField();
t_zyh.setPreferredSize(new Dimension(200,30));
JButton btn=new JButton("查询");
btn.setPreferredSize(new Dimension(100,30));
btn.addActionListener(query); //// !!!!!!!这个监听中我想获取JTextField 的 内容
JLabel l_qnf=new JLabel(" 取暖费");
JLabel l_qnfx=new JLabel();
l_qnfx.setPreferredSize(new Dimension(300,30));
JLabel l_twf=new JLabel("调温费");
JLabel l_twfx=new JLabel();
l_twfx.setPreferredSize(new Dimension(300,30));
p1.add(l_zyh);
p1.add(t_zyh);
p1.add(btn);
p1.add(l_qnf);
p1.add(l_qnfx);
p1.add(l_twf);
p1.add(l_twfx);
f.add(p1);
f.setVisible(true);
HashMap map=new HashMap();
map.put("t_zyh", t_zyh); //已测试用HashMap 传过去 就不是这个方法中定义的 //JTextField 了,怎么才能把它传递到下一个监听方法??
return map;
}
static ActionListener query = new ActionListener() {
public void actionPerformed(ActionEvent ae) {
try {
Gui gui=new Gui();
HashMap map=gui.fy_tw();
JTextField tt=map.get("zyh");
System.out.println(tt.getText());//这个为空,说明传送失败!!!
JLabel l1=(JLabel) gui.fy_tw().get("l_zyh");
HashMap map=gui.fy_tw();
JTextField t_zyh=(JTextField) map.get("t_zyh");
// Class c = gui.getClass();
Method xxx=c.getMethod("fy_tw", null);
// JTextField xxx=xxx.
Connection conn=DButil.getConn();
Statement stat=conn.createStatement();
String sql1="select sum(zjje) qnf from zy_ls_sfd2 where sflb='6100' and zyh='"+t_zyh.getText()+"'";
String sql2="select sum(zjje) twf from zy_ls_sfd2 where sflb='6200' and zyh='"+t_zyh.getText()+"'";
ResultSet rs1=stat.executeQuery(sql1);
rs1.next();
String qnf=rs1.getString("qnf");
JTextField l_qnfx=(JTextField) map.get("l_qnfx");
l_qnfx.setText(qnf);
ResultSet rs2=stat.executeQuery(sql2);
rs2.next();
String twf=rs1.getString("twf");
JTextField l_twfx=(JTextField) map.get("l_twfx");
l_twfx.setText(twf);
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
};
请问大虾,这个问题怎么解决,就是说怎么把 一个方法中的JTextField 局部变量传递到下一个方法进行修改
条件是:不用全局变量!!!
...全文
相关推荐
java JTextField组件的使用
例如: ```java JTextField textField = new JTextField(); ``` 如果需要初始化文本内容或设置默认值,可以传递字符串参数: ```java JTextField
在Java文件之间传递变量
**在JFrame间传递数据**: 在`actionPerformed`方法中,获取当前JFrame中的值,创建一个`ValueHolder`对象,并将值传递给第二个JFrame。
Java中的swing绘图
在提供的代码示例中,程序创建了一个标签、一个文本框和一个按钮,当点击按钮时,程序会获取文本框中的内容并显示在标签上。7.
函数调用参数传递类型(java)的用法介绍..ppt
四、Swing 基础Swing 是 Java 语言中的一个图形用户界面工具包,提供了许多组件来构建图形用户界面,如 JButton、JLabel、JPanel 等。
Java中控件的相互控制与消息传递实例.rar
该项目实现了一个基于Swing的简单聊天界面,通过Action事件机制完成控件间的消息传递与联动。用户输入昵称和消息后,点击发送或按回车键即可将内容显示在聊天记录区,并清空输入框,体现了GUI组件之间


Java SE
