java ,两个界面,点击第一个界面的按钮修改第二个界面的label文字,怎么做?

第一个界面只有一个label,第二个界面有一个按钮和一个jtextfield,在jtextfield里输入文字以后按按钮,在第一个界面的label里显示输入的文字... 第一个界面只有一个label,第二个界面有一个按钮和一个jtextfield,在jtextfield里输入文字以后按按钮,在第一个界面的label里显示输入的文字 展开
 我来答
画新子F
2011-01-26 · TA获得超过1189个赞
知道小有建树答主
回答量:390
采纳率:50%
帮助的人:410万
展开全部
说明一下,这里给你写的代码比较规范,关键就是在你运行第一个类,紧接着就直接构造出第二个类,并且将第一个类自身传到第二个类去,这就保证了2个类相互持有了对方,两者都是同步的。在此,你只需要去修改TextField的类容即可。

我这里是:对按钮进行监听, test01.txt.setText(this.txt.getText());
可能还有点小问题,我这里是直接写的,网吧没有编译器,你检查下就好了,记住我没有导入包。

第一个类:
public class Test01{
JFrame frame;
JLabel txt;
//构造出第二各类,把第一个类传入到第二个类,同步创建
Test02 test02;

public Test01(){
test02 = new Test02(this);
frame = new JFrame();
txt = new JLabel(20);
}

public void display(){
frame.add(txt);
}

public static void main(Strng[] args){
new Test01().display();
}
}

第二个类:
public class Test02 implements ActionListener {
JFrame frame;
JTextField txt;
JButton button;
Test01 test01;

public Test02(Test01 test01){
this.test01 = test01;//让第二各类持有第一个类的引用
frame = new JFrame();
button = new JButton("按钮");
txt = new JTextField(15);
display();
}

public void display(){
frame.add(txt);
frame.add(button,BorderLayout.DOWN);
}

public void actionPerformed(ActionEvent e) {
test01.txt.setText(this.txt.getText());
}
}
无限江山是称家i
2011-01-26 · TA获得超过358个赞
知道小有建树答主
回答量:220
采纳率:0%
帮助的人:213万
展开全部
把你的源代码附上或许更加明白你的意思
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sjl807047935
2011-01-26
知道答主
回答量:17
采纳率:0%
帮助的人:9.4万
展开全部
可以在另一个页面里声明一个静态变量 让label显示静态变量的内容
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Zoujy1022
2011-01-26 · TA获得超过1121个赞
知道小有建树答主
回答量:803
采纳率:0%
帮助的人:628万
展开全部
我写点伪代码给你
Label label= new Label("修改前");
Button button = new Button("modify");//按钮
Jtextfield jtf = new Jtextfield(30);//文本框
button.addActionListener(new ButtonListener);//添加button监听
class ButtonListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource()==button){
label.setTest(jtf.getText());
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友8b41f47ef
2011-01-26 · TA获得超过229个赞
知道小有建树答主
回答量:168
采纳率:0%
帮助的人:183万
展开全部
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class demo{
static JButton jb=new JButton("修改");
static JTextField jt=new JTextField(20);
static JLabel jl=new JLabel("无");
public static void main(String args[]){
final JFrame jf2=new JFrame("演示");
jf2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jl.setHorizontalAlignment(SwingConstants.CENTER);
jf2.add(jl);
jf2.setBounds(500,400,280,60);
jf2.setResizable(false);
jf2.setVisible(true);

final JFrame jf=new JFrame("修改");
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setLayout(new FlowLayout());
ActionListener actionListener=new ActionListener(){
public void actionPerformed(ActionEvent e){
if(jt.getText().length()>0) jl.setText(jt.getText());
else jl.setText("无");
}
};
jb.addActionListener(actionListener);
jt.addActionListener(actionListener);
jf.add(jt);
jf.add(jb);
jf.setBounds(500,460,280,100);
jf.setResizable(false);
jf.setVisible(true);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式