AWT 新建窗口

时间:2023-03-09 07:56:48
AWT 新建窗口

新建一个窗口

import java.awt.*;

定义

Frame  frm_Draw  = new Frame("Text");

初始化代码

public void Frame_Init() {
//frm_Debug.addWindowListener( new MyWindowsListener() ); //添加窗口监听器
frm_Debug.setLayout( null ); //使用 null 布局器,绝对位置
frm_Debug.setBounds( 0, 200, 400, 400 ); //设置窗口位置、大小
frm_Debug.setVisible( true ); //开启显示
}

主函数

	public static void main(String[] argv)
{
new 主类名().Frame_Init();
}

运行结果

AWT 新建窗口

这个时候,窗口还关不掉,因为没有写对应的关闭事件

写窗口关闭事件

两种方法,一种是添加窗口时间监听器,一种是使用事件适配器。

因为窗口的事件不只一种,事件监听器是一个接口,抽象类,必须全部实现。而实际中,我们可能只需要实现windowClosing事件(点击叉叉,关闭)。

事件适配器实现了监听器接口,只不过,所有的实现都是空函数,我们只需要重写那些我们感兴趣的事件就可以了

import java.awt.event.*;

事件适配器类

	class MyWindowsListener extends WindowAdapter
{
public void windowClosing( WindowEvent e )
{
System.exit(0); //关闭程序
}
}
frm_Debug.addWindowListener( new MyWindowsListener() );  //添加窗口监听器

程序就可正常关闭了

完整参考

import java.awt.*;
import java.awt.event.*; public class CreatFrame
{
Frame f = new Frame("frame title"); public void Frame_Init()
{
{
f.addWindowListener( new MyWindowsListener() ); //添加窗口监听器
f.setLayout( null ); //使用 null 布局器,绝对位置
f.setBounds( 0, 200, 400, 400 ); //设置窗口位置、大小
f.setVisible( true ); //开启显示 //添加按钮 bnt_Debug
}
} public static void main(String[] argv)
{
new CreatFrame().Frame_Init();
} class MyWindowsListener extends WindowAdapter
{
public void windowClosing( WindowEvent e )
{
System.exit(0);
}
}
}