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);
}
}); } }

最新文章

  1. 【转载】Web移动端Fixed布局的解决方案
  2. Linux部署Apache ActiveMQ 5.14.1
  3. [Linux]安装phpredis扩展
  4. Memcached、Redis和MongoDB的区别
  5. 一位Erlang程序猿的自白
  6. H5小内容(五)
  7. 【结构型】Flyweight模式
  8. 敏捷软件开发之TDD(一)
  9. H5前端性能测试总结
  10. Oracle Applications DBA 基础(二)
  11. iOS项目之使用开关控制日志输出的功能
  12. mybatis分页查询的万能模板
  13. spring 生命周期最详解
  14. WPF中TreeView的+-号和连线style的一种实现
  15. 七、持久层框架(MyBatis)
  16. python学习 面向对象高级编程
  17. DirectX中坐标系问题
  18. 反向解析与PTR(Pointer Record)
  19. 条件触发和边缘触发 及 epoll 的长处
  20. Select2 用法

热门文章

  1. Odoo POS
  2. sonar + ieda实现提交代码前代码校验
  3. kubernetes对象之secrets
  4. Coder-Strike 2014 - Round 2
  5. centos7 设置网络
  6. 目标检测之harr---点角检测harr
  7. 果壳、推库、虎秀、知乎、it世界
  8. 自定义 spinner
  9. java nio 通道(二)
  10. Linux 如何搭建Lamp的服务环境