java通过按钮控制面板颜色

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


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


public class ButtonTest {


public static void main(String[] args) {
ButtonFrame frame=new ButtonFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
class ButtonFrame extends JFrame{
public static final int DEFAULT_WIDTH=800;
public static final int DEFAULT_HEIGHT=500;
public ButtonFrame(){
setTitle("Button Test");
setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
ButtonPanel panel=new ButtonPanel();
add(panel);
}
}
class ButtonPanel extends JPanel{
public ButtonPanel(){
JButton yellowButton=new JButton("yellow");//为按钮添加文本
JButton blueButton=new JButton("blue");
JButton redButton=new JButton("red");
add(yellowButton);//添加到面板
add(blueButton);
add(redButton);
//创建按钮动作
ColorAction yellowAction=new ColorAction(Color.YELLOW);//颜色
ColorAction blueAction=new ColorAction(Color.BLUE);
ColorAction redAction=new ColorAction(Color.RED);
//关联按钮与动作
yellowButton.addActionListener(yellowAction);
blueButton.addActionListener(blueAction);
redButton.addActionListener(redAction);
}


private class ColorAction implements ActionListener{
public ColorAction(Color c){
backgroundColor=c;
}
public void actionPerformed(ActionEvent event){
//ButtonPanel panel=new ButtonPanel();
setBackground(backgroundColor);
}
private Color backgroundColor;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值