java 24 - 5 GUI之 鼠标移动改变窗体背景颜色


需求:

  创建一个可改变背景颜色的窗口,鼠标移动到按钮上,窗口背景就会改变成特定的颜色

步骤: (大致上)
  创建窗口对象
  创建按钮对象
  添加按钮到窗口中
  设置窗口关闭监听事件
  设置鼠标进入按钮区域的监听事件
  设置鼠标离开按钮区域的监听事件
  设置显示窗口

代码:

  

 1 public class FrameText2 {
 2 
 3     public static void main(String[] args) {
 4 
 5         // 创建窗口对象
 6         final Frame f = new Frame("改变背景颜色");
 7         // 设置窗口的属性
 8         f.setBounds(300, 300, 400, 400);
 9         // 设置窗口布局
10         f.setLayout(new FlowLayout());
11 
12         // 创建按钮对象
13         Button b1 = new Button("红色");
14         Button b2 = new Button("橙色");
15 
16         // 添加按钮组件到窗体中
17         f.add(b1);
18         f.add(b2);
19 
20         // 设置窗口关闭监听事件
21         f.addWindowListener(new WindowAdapter() {
22             public void windowClosing(WindowEvent e) {
23                 System.exit(0);
24             }
25         });
26 
27         // 设置鼠标进入按钮区域的监听事件
28         // 这个监听事件监听的对象是鼠标 :MouseListener MouseAdapter
29         b1.addMouseListener(new MouseAdapter() {
30             // public void mouseEntered(MouseEvent e)鼠标进入到组件上时调用。
31             public void mouseEntered(MouseEvent e) {
32                 f.setBackground(Color.RED);
33             }
34         });
35         // 设置鼠标离开按钮区域的监听时间
36         b1.addMouseListener(new MouseAdapter() {
37             // public void mouseExited(MouseEvent e)鼠标离开组件时调用。
38             public void mouseExited(MouseEvent e) {
39                 f.setBackground(Color.white);
40             }
41         });
42 
43         // 设置鼠标进入按钮区域的监听事件
44         // 这个监听事件监听的对象是鼠标 :MouseListener MouseAdapter
45         b2.addMouseListener(new MouseAdapter() {
46             // public void mouseEntered(MouseEvent e)鼠标进入到组件上时调用。
47             public void mouseEntered(MouseEvent e) {
48                 f.setBackground(Color.ORANGE);
49             }
50         });
51         // 设置鼠标离开按钮区域的监听事件
52         b2.addMouseListener(new MouseAdapter() {
53             // public void mouseExited(MouseEvent e)鼠标离开组件时调用。
54             public void mouseExited(MouseEvent e) {
55                 f.setBackground(Color.white);
56             }
57         });
58 
59         60         // 设置显示窗口
61         f.setVisible(true);
62 
63     }
64 
65 }

 

posted @ 2016-10-13 16:25  卡拉瓦  阅读(1946)  评论(0编辑  收藏  举报