在前面学了继承,就可以进行简单的登陆界面开发了。在进行简单登陆界面开发之前,首先要明白,所谓的用户界面,是由各种组件构成的,在java里依旧是一个一个的类,这些类主要是在javax.swing包和java.awt包中。这些类的对象之间相互调用的结果就是组成一个界面的表现。
Java用户界面有组件构成,例如按钮,标签,文本框等都是组件,其中有一类特殊的组件叫做容器,Swing中提供四种容器,分别为JFrame,JDialog,JWindow,JApplet.
本人刚学用JFrame创建用户界面,简单的总结如下(如有不正确的地方欢迎指正):
在创建LoginUI类之前可以先导入javax.swing.JFrame或者LoginUI类继承JFrame类,例如:
public class LoginUI extends javax.swing.JFrame{},这时LoginUI就已经继承了JFrame类的所有属性与方法,LoginUI实际上就已经是一个窗体类,这时就可以创建窗体了。首先用setTitle()和setSize()方法设置窗体的标题和大小,再用setVisible()方法将窗体显示在屏幕上,但要在加setVisible(true)之前要加setDefaultCloseOperation(3)这一句,这句的作用是点击关闭按钮时窗体退出程序,具体代码如下:

public class LoginUI extends javax.swing.JFrame{ 

 public static void main(String[] args){ 

 //创建LoginUI类对象 

 LoginUI UI = new LoginUI(); 

 //设置窗体标题:我的第一个窗体 

 UI. setTitle(“我的第一个窗体”); 

 //设置窗体大小 

 UI. setSize(300,200); 


 //点击关闭按钮时窗体退出程序 

 UI. setDefaultCloseOperation(3); 

 //将窗体显示在屏幕上 

 UI. setVisible(true); 

 } 

}


运行程序就可以在屏幕上显示出一个窗体,如图:


[img]http://dl.iteye.com/upload/attachment/501714/da6644f5-2186-3161-a85b-b9ef5e3cd287.png[/img]


接下来要在窗体中添加组件,但在添加组件之前必须记住要先设置布局管理器,设置布局管理器和添加组件一定要在this. setVisible(true)这一行代码之前,例如这里创建流式布局管理对象和添加“账号”、“密码”两个文本标签和两个文本输入框和一个“登录”按钮,具体代码如下:

public class LoginUI extends javax.swing.JFrame{ 

 public static void main(String[] args){ 

 //创建LoginUI类对象 

 LoginUI UI = new LoginUI(); 


 //设置窗体标题:我的第一个窗体 

 UI. setTitle(“我的第一个窗体”); 

 //设置窗体大小 

 UI. setSize(300,200); 

 //创建一个布局管理对象 

 java.awt.FlowLayout fl = new java.awt.FlowLayout(); 

 //设置窗体的布局管理器 

 UI.setLayout(fl); 

 //文本标签 

 javax.swing.JLabel label1=new javax.swing.JLabel(“账号:”); 

 javax.swing.JLabel label2=new javax.swing.JLabel(“密码:”); 

 //文本输入框 

 javax.swing.JTextField field1 = new javax.swing.JTextField(20); 

 javax.swing.JTextField field2 = new javax.swing.JTextField(20); 

 //按钮 

 javax.swing.JButton bu=new javax.swing.JButton(“登录”); 


 //添加文本标签、文本输入框、按钮到窗体上 

 UI.add(label1); 

 UI.add(field1); 

 UI.add(label2); 

 UI.add(field2); 

 UI.add(bu); 


 //点击关闭按钮时窗体退出程序 

 UI. setDefaultCloseOperation(3); 

 //将窗体显示在屏幕上 

 UI. setVisible(true); 

 } 

}


这样一个简单的窗体就完成了,运行结果如下图:


[img]http://dl.iteye.com/upload/attachment/501718/b1c6b278-95d6-3936-99f2-e8a0ad191aed.png[/img]