java点击按钮换背景颜色?

来源:百度知道 编辑:UC知道 时间:2024/05/30 17:43:43
创建一个AWT面板,该面板包含3个不同颜色名称的按钮,单击每个按钮时应使窗口的背景色显示为相应的颜色。
import java.awt.*;
import java.awt.event.*;
public class Changecolor extends MouseAdapter {
public static void main(String args[]){
Changecolor ct=new Changecolor();
ct.init();

}

public void init(){
Frame f=new Frame();
f.setLayout(new FlowLayout());
Panel P1=new Panel();
Panel P2=new Panel();
Panel P3=new Panel();
Button b1=new Button("红色");
Button b2=new Button("蓝色");
Button b3=new Button("黄色");
f.add(b1);
f.add(b2);
f.add(b3);
P1.setBackground(Color.red);
P2.setBackground(Color.blue);
P3.setBackground(Color.yellow);
P1.addMouseListener(this);
P2.addMouseListener(this);
P3.addMouseListener(this);
f.setSize(300,300);
f.setVisible(true);
public void mousePressed(MouseEvent e2){
if(e2.getSource()==b

改了一下:
package method2;

import java.awt.Button;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.Panel;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

public class Changecolor extends MouseAdapter {

    Frame f = new Frame();//f应声明为属性,才能在mousePressed()中可见
    Panel P1 = new Panel();//P1应声明为属性,才能在mousePressed()中可见
    Panel P2 = new Panel();//P2应声明为属性,才能在mousePressed()中可见
    Panel P3 = new Panel();//P3应声明为属性,才能在mousePressed()中可见
    Button b1 = new Button("红色");//b1应声明为属性,才能在mousePressed()中可见
    Button b2 = new Button(&