要开发一个界面,我们一般通过写一个窗体并在这个窗体上放置其它元素组件来实现。一个界面是一个JFrame对象,代码实现如下:
package com.qsj.login1220;
public class Login {
public static void main(String[] args){
Login lo = new Login();
lo.showUI();
}
public void showUI(){
// 创建窗体对象
javax.swing.JFrame jf = new javax.swing.JFrame();
// 设置窗体大小
jf.setSize(400, 500);
//设置窗体标题
jf.setTitle("登陆界面");
// 设置退出进程的方法
jf.setDefaultCloseOperation(3);
// 设置居中显示
jf.setLocationRelativeTo(null);
// 流式布局管理器
java.awt.FlowLayout flow = new java.awt.FlowLayout();
jf.setLayout(flow);// 设置窗体为流式布局
//图片(括号里是图片地址)
javax.swing.ImageIcon image = new javax.swing.ImageIcon("F:\\图片\\1.jpg");
//标签
javax.swing.JLabel jla = new javax.swing.JLabel(image);
java.awt.Dimension de = new java.awt.Dimension(1500, 300);
jla.setPreferredSize(de);
jf.add(jla);
//文本框
javax.swing.JTextField jtf = new javax.swing.JTextField();
javax.swing.JTextField jtl = new javax.swing.JTextField();
java.awt.Dimension dm = new java.awt.Dimension(300, 30);
//(除了JFrame)其它所有组件设置大小都是该方法
jtf.setPreferredSize(dm);
jtl.setPreferredSize(dm);
jf.add(jtf);
jf.add(jtl);
//复选框
javax.swing.JCheckBox jcb = new javax.swing.JCheckBox("记住密码");
jf.add(jcb);
javax.swing.JCheckBox jcd = new javax.swing.JCheckBox("自动登陆");
jf.add(jcd);
// 按钮
javax.swing.JButton jbu = new javax.swing.JButton("登录");
jf.add(jbu); // 给窗体添加按钮对象
jf.setVisible(true);// 设置可见,放在代码最后一句
}
}
流式布局特征如下:
l 组件按照设置的对齐方式进行排列
l 不管对齐方式如何,组件均按照从左到右的方式进行排列,一行排满,转到下一行。(比如按照右对齐排列,第一个组件在第一行最右边,添加第二个组件时,第一个组件向左平移,第二个组件变成该行最右边的组件,这就是从左向右方式进行排列)