java通过按钮控制面板颜色

xiaoxiao2021-02-28  79

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; }
转载请注明原文地址: https://www.6miu.com/read-84278.html

最新回复(0)