swing 两个JFrame间如何传值?

yyc6219869 2009-04-23 04:22:29
我写了一个类 extends JFrame ,上面有一个文本框,后跟一个按钮。我点按钮新打开一个新Jframe,里面有一个JList和JBUtton,Jlist里面装的是从数据库中查出的值。我想点JButton,关闭当前JFrame ,把JList中的值传到前一个JFrame中的文本框中,如何传?请帮帮忙。
...全文
861 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
wljheart 2009-05-11
  • 打赏
  • 举报
回复
9楼和11楼的做法其实和lishigui的做法一样的。他是传的jtextfield。。。你是传的整个类。我在做c#的时候是这样做的
yyc6219869 2009-04-24
  • 打赏
  • 举报
回复
昨天晚上回去试了一下,通过构造函数把JFrame1对像传过去就行,也就是9楼,11楼说的。我没做过,这几天学习一下,练练手。谢谢大家!
zhong19860904 2009-04-24
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 leeson11111 的回复:]
LZ精神可佳。
这个很简单的。
JFrame1和JFrame2
你把JFrame2写多一个构造函数,构造函数里面传一个JFrame1这个参数。
在JFrame1中把JFrame2 new 出来的时候就把自己传过去.
在JFrame2中设一个变量接收JFrame1,这样就可以调用JFrame1里的东东了。
[/Quote]

楼上的做法是比较常见的,一般是用构造方法传递值的...
shmilycharlene 2009-04-24
  • 打赏
  • 举报
回复
使用接口来设计,可能这是最标准的做法了
leeson11111 2009-04-24
  • 打赏
  • 举报
回复
LZ精神可佳。
这个很简单的。
JFrame1和JFrame2
你把JFrame2写多一个构造函数,构造函数里面传一个JFrame1这个参数。
在JFrame1中把JFrame2 new 出来的时候就把自己传过去.
在JFrame2中设一个变量接收JFrame1,这样就可以调用JFrame1里的东东了。
chaner2002 2009-04-23
  • 打赏
  • 举报
回复
精神支持,有着java玩着,总不至于精神颓废.
shenzhenchufa2007 2009-04-23
  • 打赏
  • 举报
回复
也可以把第一个JFrame(A)中的组件(a)设置为static,在第二个JFrame中,直接设置其值,如:
A.a=你要设置的值.
yyc6219869 2009-04-23
  • 打赏
  • 举报
回复
呵呵,我在学校时间学了一点,现在工作了,也没有找这方面的工作,但是也没有忘过,也就是什么时间想起来的学一点,断断续续吧。
lishigui 2009-04-23
  • 打赏
  • 举报
回复
顺便宜问一下你学java多长时间了?????
lishigui 2009-04-23
  • 打赏
  • 举报
回复
private JTextField field = new JTextField();
frame1(){

JButton button1 = new JButton("button1");
button1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new frame2(field);
}

});
}


private JLst list;
private JTextField field;
frame2(JTextField field){
this.field = field;
JButton button2 = new JButton("button2");
button2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
field.setText(list.getSelectedValues().toString())
frame2.this..dispose();
}

});
}
lishigui 2009-04-23
  • 打赏
  • 举报
回复
private JTextField field = new JTextField();
frame1(){

JButton button1 = new JButton("button1");
button1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new frame1(field);
}

});
}


private JLst list;
private JTextField field;
frame2(JTextField field){
this.field = field;
JButton button2 = new JButton("button2");
button2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
field.setText(list.getSelectedValues().toString())
frame2.this..dispose();
}

});
}


yyc6219869 2009-04-23
  • 打赏
  • 举报
回复
把第二个JFram的JList的数据写到第一个JFrame的文本框中。我就是想问怎么传过去,具体点?

lishigui 2009-04-23
  • 打赏
  • 举报
回复
当你点第一个JFram的按钮时,你把第一个JFrame的文本框传给第二个JFrame,当你点第二个JFrame的按钮时,把第二个JFram的JList的数据写到第一个JFrame的文本框中,然后关闭第二个窗体,这样不就可以了吗?!!

62,635

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧