这个Java代码哪里错了,哪里里错了,指导一下小白我,就是想实现按钮的功能

候翀 2019-08-01 02:28:28
package 常用组件及布局;

public class Mainwind {

public static void main(String[] args) {
// TODO Auto-generated method stub
Haha win=new Haha();
}

}

package 常用组件及布局;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Haha extends JFrame {
JButton b1,b2;
JLabel a1=new JLabel();
public Haha() {
setTitle("图形用户界面");
setSize(460,300);
setLocation(100,100);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
b1=new JButton("中文");
b2=new JButton("English");
JPanel cp=new JPanel();
cp.add(b1);
cp.add(b2);
a1.setOpaque(true);
a1.setBackground(Color.YELLOW);
a1.setText("你好,中国");
Container con=getContentPane();
con.add(cp,BorderLayout.NORTH);
con.add(a1,BorderLayout.CENTER);
b1.addActionListener(new b11());
b2.addActionListener(new hah());
con.validate();


}


}
package 常用组件及布局;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JLabel;

public class b11 implements ActionListener {
JLabel a1;
JButton b1;
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
a1.setText("你好吗");
}

}

package 常用组件及布局;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JLabel;

public class hah implements ActionListener {
JLabel a1;
JButton b2;
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
a1.setText("english");

}

}

...全文
54 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
候翀 2019-08-01
  • 打赏
  • 举报
回复
引用 4 楼 qq_39936465的回复:
[quote=引用 3 楼 候翀 的回复:] [quote=引用 1 楼 qq_39936465的回复:]你监视器的a1,b1 和主程序的a1,b1 只不过名字相同的2个变量,把监视器写成内部方法吧或者写成匿名内部类。
怎么写啊,能稍微改一下吗[/quote] 你这个是自己给自己找麻烦,不想写内部类,就要传参,写个方法传递参数,把主程序中的a1,b1当参数传递到监听类[/quote] 换个方法也也算多学一点,书上就是分开写的
qq_39936465 2019-08-01
  • 打赏
  • 举报
回复
引用 3 楼 候翀 的回复:
[quote=引用 1 楼 qq_39936465的回复:]你监视器的a1,b1 和主程序的a1,b1 只不过名字相同的2个变量,把监视器写成内部方法吧或者写成匿名内部类。
怎么写啊,能稍微改一下吗[/quote] 你这个是自己给自己找麻烦,不想写内部类,就要传参,写个方法传递参数,把主程序中的a1,b1当参数传递到监听类
候翀 2019-08-01
  • 打赏
  • 举报
回复
引用 1 楼 qq_39936465的回复:
你监视器的a1,b1 和主程序的a1,b1 只不过名字相同的2个变量,把监视器写成内部方法吧或者写成匿名内部类。
怎么写啊,能稍微改一下吗
候翀 2019-08-01
  • 打赏
  • 举报
回复
主要是不想写成内部类
qq_39936465 2019-08-01
  • 打赏
  • 举报
回复
你监视器的a1,b1 和主程序的a1,b1 只不过名字相同的2个变量,把监视器写成内部方法吧或者写成匿名内部类。

62,628

社区成员

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

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