JAVASE17GUI

1,简介

首先上图






一段简单创建界面的代码:



package Awt;

import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;

public class AwtDemo {

	/**
	 创建图形化界面:
	 1,创建frame窗体
	 2,对窗体进行基本设置,比如位置,大小,布局
	 3,定义组件
	 4,将组件通过窗体的add方法添加到窗体中
	 5,让窗体显示,通过setVisible(true)
	 */
	public static void main(String[] args) {
	
        Frame f=new Frame("my awt");
        f.setSize(500,400);
        f.setLocation(300,200);
        //窗体弹出位置
        f.setLayout(new FlowLayout());
        
        Button b=new Button("按钮");
        f.add(b);
        f.setVisible(true);
	}

}


结果:


2,事件监听机制


  



事件监听机制的特点:

1,事件源。
2,事件。

3,监听器。
4,事件处理。
事件源: 就是awt包或者swing包中的那些图形界面组件。
事件:每一个事件源都有自己特有的对应事件和共性事件。
监听器:将可以触发某一个事件的动作(不止一个动作)都已封装进了监听器中。
以上三者,在java中都已经定义好了,直接获取其对象来用就可以了。
我们要做的事情是,就是对产生的动作进行处理。


窗体监控,对窗体的X按钮进行关闭事件处理

public static void main(String[] args) {
	
        Frame f=new Frame("my awt");
        f.setSize(500,400);
        f.setLocation(300,200);
        //窗体弹出位置
        f.setLayout(new FlowLayout());
        
        Button b=new Button("按钮");
        f.add(b);
        
        //这里直接写匿名内部类,即MyWin
        f.addWindowListener(new WindowAdapter() {
        	
        	@Override
    		public void windowClosing(WindowEvent arg0) {
    		   System.exit(0);
    		}
        	
		});
        f.setVisible(true);
	}
	
//	class MyWin implements WindowListener
//	{
//		//需要覆盖7个方法,可是只用到了关闭动作。其他动作没用到,但是必须复写
//	}
	
	//因为WindowListener的子类WindowAdapter已经实现了WindowListener接口。
	//并覆盖了其中所有方法,那么只需要继承WindowAdapter 覆盖需要的方法即可。
	class MyWin extends WindowAdapter
	{

		@Override
		public void windowClosing(WindowEvent arg0) {
		   System.exit(0);
		}
		
		
	}

}


 点击窗体上的X后,程序会退出


原文地址:https://www.cnblogs.com/javawebsoa/p/3069656.html