JavaGUI之事件的快速理解

来源:互联网 发布:淘宝店铺导航修改首页 编辑:程序博客网 时间:2024/04/30 13:57

事件的理解才让我们进入GUI世界的大门,他很容易的,相信我。

对于会在GUI中添加各种各样的按钮做的很不错是,但是在测试点击中却没有任何反应,为什么呢?因为你都没有定义鼠标点击事程序应该做什么,或者光标理该这时应该显示什么,所以程序不知道该做些什么。

那么,类如一个窗口你就要为他添加窗口事件,并在事件中定义各种相应错做,比如你家里的孩子请了一个保姆,你告诉保姆孩子哭了,你告诉他应该喂奶,孩子困了,你告诉保姆应该哄孩子睡觉。然后安装一个监视器在孩子身上,保姆时时刻刻盯着孩子,并根据孩子的动作做出各种各样的相应。

下面列出了一个最简单的操作,其流程如下。

例子:创建一个最基本的JFrame窗口,为它实现基本的窗口事件(关闭,打开,)

2017-01-17_23h55_55.png

package OneLenson;import java.awt.event.WindowEvent;import java.awt.event.WindowListener;import javax.swing.JFrame;public class classTest extends JFrame{public static void main(String[] args) {// TODO Auto-generated method stubnew classTest();}public classTest (){this.setTitle("我的窗口");this.setSize(300,200);this.setLocation(100,100);this.addWindowListener(new mylistener());this.setVisible(true);}class mylistener implements WindowListener{@Overridepublic void windowOpened(WindowEvent e) {System.out.println("这是一个事件的.....操作");}@Overridepublic void windowClosing(WindowEvent e) {System.out.println("这是一个事件的退出操作");}@Overridepublic void windowClosed(WindowEvent e) {System.out.println("这是一个事件的反应");}@Overridepublic void windowIconified(WindowEvent e) {System.out.println("这是一个事件的反应");}@Overridepublic void windowDeiconified(WindowEvent e) {System.out.println("这是一个事件的反应");}@Overridepublic void windowActivated(WindowEvent e) {System.out.println("这是一个事件的反应");}@Overridepublic void windowDeactivated(WindowEvent e) {System.out.println("这是一个事件的反应");}}}
当然各位友友们,你们有没有发现一个问题,我仅仅想实现一个窗口的关闭操作,你一旦继承窗口事件,这个类就必须实现该继承的全部方法,这样做是不是很不方便啊,为了解决这个问题java提供了方法,就是让这个类直接继承(比如是窗口事件就直接继承WindowAdapter这个类)这样做,你只需要实现一个关闭事件就可以了,完美地解决了java接口的问题。

来源梁东振博客http://www.liangdongzhen.cn

1 0
原创粉丝点击