图形用户界面是一组图形界面成分和界面元素的有机组合。这些成分和元素之间不仅外观上有包含、相邻、相交等物理关系,内在的也包含、调用等逻辑关系。他们相互作用,传递消息,共同组成一个能响应特定事件的、具有一定功能的图形界面系统。
设计和实现图形用户界面的工作主要有两个:一是创建组成界面的各种元素和成分,指定他们的属性和位置关系,根据具体需要对其进行排列,从而构成完整的图形用户界面的物理外观。二是定义图形用户的事件和个界面元素对应的不同的事件响应,从而实现图形用户界面和用户之间的交互。

Swing概述
既是Java编译库中提供的javax.Swing包,其被列入Java的基础JFC中,其中定义了比java.awt包更多的更强的功能。使得设计者能够更灵活更方便的进行图形用户界面的设计。
基本界面实现需要使用的组件?
JFrame(窗体构建)
FlowLayout(流式布局组建,对元素进行布局)
JButton(按钮组建)
JLable(标签组件)
如下代码就是构造了一个简单的界面:

//construct a interface 

 JFrame frame=new JFrame(); 

 //设置标题 

 frame.setTitle("First Interface Program!"); 

 //need to set up a arrangement supervisor before placing factor 

 //set up a flow layout supervisor object 

 FlowLayout fl=new FlowLayout(); 

 frame.setLayout(fl); 

 JLabel notice_name=new JLabel(" 请输入您的登录账号和通行密码 !"); 

 frame.add(notice_name); 

 //set a sign-factor 

 //set name 

 JLabel la_name=new JLabel("Name:"); 

 frame.add(la_name); 

 JTextField jta_name=new JTextField(12); 

 frame.add(jta_name); 

 //set password 

 JLabel key_name=new JLabel("Pass: "); 

 frame.add(key_name); 

 JTextField key2_name=new JTextField(12); 

 frame.add(key2_name); 

 JButton bu_login=new JButton("Login"); 

 frame.add(bu_login); 

 JButton bu_register=new JButton("register"); 

 frame.add(bu_register); 

 //设置窗体大小 

 frame.setSize(200, 200); 

 frame.setDefaultCloseOperation(2); 

 //让窗体显示出来 

 frame.setVisible(true);


事件:事件代表了某对象可以执行的操作及状态。整个事件的过程由产生事件的对象(事件源)和事件对象(事件接口)以及监听者(事件监听器)对象之间组成。
事件的执行流程:
当使用者在事件源上发生动作时,动作会激活事件监听器方法,事件监听器方法会收集事件源的信息,自动
调用监听器方法中的对象参数的事件处理方法;执行事件处理方法中的代码,完成整个事件的操作。
事件源:只有组件才可以成为事件源对象。例如:鼠标按下和释放的动作是相应在JFrame窗体组件上。事件源是创建的画板窗体对象。
事件监听器方法:监听器方法的作用就是:捕获什么样的动作。例如:addMouseListener(MouseListener ml); 鼠标按下,鼠标释放,鼠标单击,鼠标进入,鼠标离开这些动作都可被监听器方法捕捉到,并作出相应的反应。
事件接口:例如MouseListener 就是鼠标事件接口,接口不允许创建对象。定义一个类实现接口,必须要实现接口中所有的抽象方法。
Java中存在许多种类事件
下面说一下ActionEvent事件
1.动作事件
ActionEvent类含有ACTION_PERFORMED事件,它是引发某个动作的执行事件。能触发这个事件的动作包括:单击按钮;双击一个列表中的选项;选择菜单项或者在文本框中输入回车等。
2.ActionEvent类中可用的主要方法:
getSource()方法:用来获取引发事件的对象名。
getActionCommand()方法:用来获取对象的标签或者事先为这个对象设置的对象名。例如对谋按钮添加了动作监听器,使用该方法可以获得按钮上的文字。
3.事件响应
当用户点击对象的时候,就会引发ActionEvent类代表的动作事件。如:对象名.addActionListener(this);
该语句注册事件源对象的监听者对象为this,而且要求this对象的类必须声明该类并且并实现ActionListener接口。方事件发生时引发的事件将被事件的监听器监听到,并且引用ActionListener的ActionPerfromed(ActionEvent e)方法响应事件的动作。