java-swingButton
2024-09-04 14:47:31
package com.http; import java.awt.*;
import java.awt.event.*; import javax.swing.*; import com.http.TestSwing2.HelloWorldFrame; public class SwingButton extends JFrame
{
private JPanel buttonPanel;
private static final int DEFAULT_WIDTH = 300;
private static final int DEFAULT_HEIGHT = 200; public SwingButton()
{
setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
//创建按钮
JButton yellowButton = new JButton("yellow");
JButton blueButton = new JButton("blue");
JButton redButton = new JButton("red"); buttonPanel = new JPanel(); //向面板中添加按钮
buttonPanel.add(yellowButton);
buttonPanel.add(blueButton);
buttonPanel.add(redButton); //向frame中添加面板
add(buttonPanel); //实例化事件
ColorAction ya = new ColorAction(Color.YELLOW);
ColorAction ba = new ColorAction(Color.BLUE);
ColorAction ra = new ColorAction(Color.RED); //添加按钮事件,改变面板的颜色
yellowButton.addActionListener(ya);
blueButton.addActionListener(ba);
redButton.addActionListener(ra); } //触发后执行的事件,继承ActionListener,并重写actionPerformed接口
public class ColorAction implements ActionListener
{ private Color backgroundColor;
public ColorAction(Color c)
{
backgroundColor = c;
} @Override
public void actionPerformed(ActionEvent event) {
// TODO Auto-generated method stub
buttonPanel.setBackground(backgroundColor);
}
} public static void main(String[] argvs)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{ JFrame frame = new SwingButton();
frame.setTitle("SwingButton");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}); } }
最新文章
- 【转载】Web移动端Fixed布局的解决方案
- Linux部署Apache ActiveMQ 5.14.1
- [Linux]安装phpredis扩展
- Memcached、Redis和MongoDB的区别
- 一位Erlang程序猿的自白
- H5小内容(五)
- 【结构型】Flyweight模式
- 敏捷软件开发之TDD(一)
- H5前端性能测试总结
- Oracle Applications DBA 基础(二)
- iOS项目之使用开关控制日志输出的功能
- mybatis分页查询的万能模板
- spring 生命周期最详解
- WPF中TreeView的+-号和连线style的一种实现
- 七、持久层框架(MyBatis)
- python学习 面向对象高级编程
- DirectX中坐标系问题
- 反向解析与PTR(Pointer Record)
- 条件触发和边缘触发 及 epoll 的长处
- Select2 用法