之前我们在文章中引用的监听事件有输入框的监听事件,按钮的监听事件,还有鼠标的监听事件,这次我们主要来玩一把窗口容器的监听事件,其实之前有用过,就是给窗体容器添加一个关闭功能的时候,但也仅仅是一个关闭,这次我们玩的更多一点。
package com.Ltz2.WindowListener;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class TestWindowListener {
public static void main(String[] args) {
new MyFrameOne();
}
}
class MyFrameOne extends Frame{
public MyFrameOne(){
setVisible(true);
setBounds(220,220,600,420);
setBackground(Color.lightGray);
this.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.out.println("我负责窗口的关闭");
System.exit(0);
}
@Override
public void windowActivated(WindowEvent e) {
MyFrameOne source = (MyFrameOne) e.getSource();
source.setTitle("窗口已经激活");
}
});
}
}
首先声明,代码部分的编写,这次的监听事件没有进行自定义类的编写,而是直接使用匿名内部类的方式,在自定义的窗口容器类中进行的编写。
其实窗口容器中的监听事件还有很多方法,但其实常用的无非就是三四个,我只重写了最常用的两个,但其实GUI编程用的也不多了,但是为了学习还是写一下文章,又由于计算学习成本,不进行太多的知识挖掘,点到为止了。
当代码写好之后,我们运行程序,效果如图:
一如既往,一个带有颜色的大版块,但其实你应该会发现,这次的窗口是没有标题的,因为在代码中没有给其设置上标题,然后当你点击别的应用程序,在切回我们自己的窗口容器的时候,你会发现::->
我们的窗口容器又有了标题名字了,这是因为重写的windowActivated方法中,我们给其设置了名字,这个方法的作用就是窗口运行中的事件监听。很鸡肋,不过学习一下感觉还是不错的,毕竟见识的多一点点,真的爽歪歪 😉 😉