Java 图形界面事件处理机制

Java语言提供了一系列的用户图形界面的组件,主要有两个包:java.awt,和 javax.swing.

其中,awt包是早期包,swing包是后期提供的用户界面包。

swing包组件与awt包组件的区别在于:swing包组件 通常不依赖于 当前平台GUI功能。

swing组件优势:1、跨平台,2、移植性强,3、swing扩展了awt包,组件更加丰富,使用更加方便。

事件处理机制:

Java中使用委托事件模型来处理事件。

委托事件模型分为三个部分:事件源、事件对象、事件监听器。

事件源:指可以产生事件的对象。如窗口、文本框、按钮、下拉列表、鼠标点击。

事件对象:事件对象封装了有关事件的信息。事件类是系统事先预定好的。包括:ActionEvent, ItemEvent, MouseEvent, KeyEvent, FocusEvent 以及 WindowEvent等。

事件监听器:事件监听器也是一个对象。它接受从事件源发来的消息,并且对于事件做出响应。凡是实现了一个监听接口的类的对象都可以是事件监听器。常用的事件监听器接口 与事件对象一样:

ActionListener, ItemListener, MouseListener, KeyListener, FocusListener 以及 WindowListener。

事件处理流程:

事件对象注册事件监听器,当事件源发生时候,触发事件监听器处理相应事件。

简而言之:注册-->监听-->处理

时间: 2024-10-13 14:36:20

Java 图形界面事件处理机制的相关文章

Java图形界面编程

一:基本概念 AWT(Abstract Window Toolkit) 抽象窗口工具包,SUN 公司提供的用于图形界面编程(GUI)的类库.但是AWT得实现严重依赖于下层操作系统,所以导致组件AWT的外观取决于程序运行的平台.AWT的类和接口都定义在java.awt包中. Swing    Swing组件是实在AWT基础上开发的新型GUI组件,它是纯Java实现的轻量级(light-weight)组件,它不依赖任何特定平台,Swing组件在不同平台具有一致性的表现,但是Swing应用程序的界面外

Java 图形界面开发--图文并茂建立学生管理系统

图形用户界面(Graphics User Interface,GUI)是用户与程序交互的窗口,比命令行的界面更加直观并且更好操作. 这是本人在学习java图形界面开发阶段一步一步实现的超级简易的学生管理系统.虽然说不入大神法眼,但这确实是费了自己不少心血.对于我这样的菜鸟来说,考虑不周到,一不小心就Exception,然后就是自己调呀调.在此分享出来希望对和我一样的菜鸟有帮助. 程序完整代码下载地址见: https://github.com/chaohuangtianjie994/The-Sys

多线程编程、Java I/O系统和Java图形界面编程

多线程编程: 一个正在运行的程序通常称为一个进程,每一个任务称为一个线程,中能够在一个程序内运行多线程的程序称为多线程程序. 线程与进程的区别:①每个进程都需要操作系统为其分配独立的内存空间: ②而同一个进程中的所有线程都在同一内存空间工作,这些线程可以共享同一块内存和系统资源. 线程的创建: 1)通过继承Thread类来创建线程: ①创建一个继承Thread类的类: ②在创建的Thread子类中重写run()方法,在方法中写入想要线程运行的代码: ③创建Thread子类的实例: ④通过调用该实

JAVA 图形界面swing 创建按钮、文本域

package org.rui.swin; import java.awt.FlowLayout; import javax.swing.JButton; import javax.swing.JFrame; import org.rui.utils.SwingConsole; public class Button1 extends JFrame{ private JButton button1=new JButton("button1"), button2=new JButton(

Java图形界面实战如何用键盘控制小球的移动以及接口的讲解

如何实现小球的移动 还是先走一个小球吧,已经做了很多次了,我们开始思考,如果用户按了键盘上的一个键,那么子啊整个计算机系统中,谁最先知道这件事情呢?这个大家都可以猜出来没错就是键盘,不过后面的事情,键盘到底是通知给谁了?我们干脆跳过中间环节吧,一定会到操作系统对吧?如果你的程序要能够响应用户的输入,是不是操作系统要将这件事情通知给你的程序?系统怎么能够把一件事情通知到你的程序呢?其实之前我们遇到过类似和系统打交道的事情无论是开始的main,还是重画的paint,抑或是线程的run都是和系统打交道

Java图形界面实战案例——实现打字母游戏

实现打字母的游戏 这次这个案例可以说是头几次所讲的内容的一个技术汇总,主要是 运用了几大块的知识.我们先来定义一下案例的背景:在一个300*400的窗体上,有10个随机产生的字母下落,在键盘上敲击字母,若是敲对了就消掉,初始化的成绩为1000分,每次敲对一个字母就加上10分,如果在字母落到了屏幕的下方还没有敲对的话则判定为失败,就扣除100分. 我们还是老样子,先来进行步骤的划分 1.做满天星 2.把星星改成随机的10个字母 3.让字母落下,如果字母落出了屏幕就生成新的字母,并从屏幕的上方重新出

【Java】【事件处理机制】

import javax.swing.*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener; /* 栗子 事件监听了解*/ class Cat implements ActionListener{ public void actionPerformed(ActionEvent arg0){ if(arg0.getActionCommand().equals("黑色&qu

【转】java图形界面设计(AWT)

[转自]http://blog.sina.com.cn/s/blog_616e189f0100ne1t.html 1.       基本的java Frame操作. Java的图形界面的类主要包括AWT和Swing.在AWT中图形元素的父类为Component. 继承关系如下:Component->Container->Window->Frame->JFrame.(注意:Swing对AWT进行了扩展). 下面给出一个简单的java图形程序: package com.guan.vis

JAVA 图形界面开发基础详解

/*文章中用到的代码只是一部分,需要源码的可通过邮箱联系我 [email protected]*/ 与C的win32一样,JAVA也有自己的图形界面开发,将在此篇博客中对基础部分进行讲解. 1.Java提供的图形界面类有哪些? Java提供了两套图形界面 (1)AWT组建(基础) AWT组件是jdk1.0的时候推出的图形界面类,它是位于java.awt包下的类.   当时在开发AWT组件时,采用的语言是C和C++,并且还调用了操作系统底层的绘图函数来实现AWT组件(我们看到的图形界面实际上画出来