欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java_GUI_事件与监听_总结

程序员文章站 2022-03-22 15:20:34
...

一、 AWT 与 Swing 的关系:

  • 抽象视窗工具组(Abstract Window Toolkit=AWT)是Java的平*立的视窗系统, 图形和使用者界面器件工具包。AWT是Java基础类(JFC)的一部分,为Java程序提供图形使用者界面(GUI)的标准API。
  • Swing提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT。

 

图形界面程序可以使用各种各样的图形界面元素,如文本框、按钮、列表框、对话框等,我们将这些图形界面元素称为GUI组件,在这些组件上不能容纳其它的组件。

 

容器其实也是一种组件,是一种比较特殊对的组件,它可以用来容纳其他的组件,如窗口、对话框、所有的容器类都是java.awt.Container的直接或间接子类,Container类是Component类的一个子类,由此可见容器本身也具有组件的功能和特点,也可以被当作基本组件一样使用。

Java_GUI_事件与监听_总结
            
    
    博客分类: Java Java 

 

 

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;


public class Demo {

    public static void main(String[] args) {
       JFrame f = new JFrame("Simple Swing Application"); // 创建*窗口
       JButton button = new JButton("Click me!"); // 创建按钮组件
          
       f.setDefaultCloseOperation(f.EXIT_ON_CLOSE); // 按下关闭按钮,结束当前进程
       f.getContentPane().add(button);
       f.setSize(300, 300);
       f.setVisible(true); // 将*窗口设置为可见
    } 
}

 

二、监听事件:

现在按钮还没有先关功能,在按钮按下后,需要加上鼠标监听事件,代码如下:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;


public class Demo {

    public static void main(String[] args) {
       JFrame f = new JFrame("Simple Swing Application"); 
       JButton button = new JButton("Click me!"); 
          
       /**
        * 该block增加鼠标监听事件
        */
       button.addActionListener(new ActionListener(){ // 事件源(注册事件)
        
        @Override
        public void actionPerformed(ActionEvent e) { // 监听
            button.setText("I've been clicked!");
        }
    });

       f.setDefaultCloseOperation(f.EXIT_ON_CLOSE); 
       f.getContentPane().add(button);
       f.setSize(300, 300);
       f.setVisible(true); 
    } 
}

 

2.1、事件模型及其相关概念:

 

Java_GUI_事件与监听_总结
            
    
    博客分类: Java Java 

 

  • 事件:用户在界面上的某一个操作,通常使用各种输入设备,如鼠标、键盘等。
  • 事件源:产生事件的组件,例如在一个按钮上的单击就是事件源。
  • 监听器:包含事件处理器,负责检查事件是否发生,若发生则激活事件处理器对其处理。
相关标签: Java