界面的组成
可视化部分:窗体、按钮、输入框
元素规则部分:尺寸、字体、布局
内容部分:文本、图片
界面开发所需要的类
窗体:JFrame
按钮:JButton
标签:JLabel
输入框:JTextField
密码输入框:JPasswordField(输入内容隐藏)
流式布局:FlowLayout(从左到右,从上到下,整体居中)
单选框:JRadioButton
复选框:JCheckBox
界面开发代码
导入包
import javax.swing.*;
import java.awt.*;
创建一个类Register
public class Register{
}
声明一个方法
public class Register {
public void regitUI(){
}
}
创建程序入口
public class Register {
public void regitUI(){
}
//程序入口
public static void main(String[] args) {
Register ui=new Register();
ui.regitUI();//对象名调用方法
}
}
完善方法regitUI()
创建一个窗体类对象
public void regitUI(){
//创建一个窗体类对象
JFrame jf=new JFrame();
jf.setSize(500,500);//尺寸
jf.setTitle("注册界面");//标题
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭方式
}
创建一个布局类对象
public void regitUI(){
//创建一个窗体类对象
JFrame jf=new JFrame();
jf.setSize(500,500);//尺寸
jf.setTitle("注册界面");//标题
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭方式
FlowLayout f1=new FlowLayout();//创建一个布局类对象
jf.setLayout(f1);
}
创建标签
public void regitUI(){
//创建一个窗体类对象
JFrame jf=new JFrame();
jf.setSize(500,500);//尺寸
jf.setTitle("注册界面");//标题
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭方式
FlowLayout f1=new FlowLayout();//创建一个布局类对象
jf.setLayout(f1);
//创建标签
JLabel namejla=new JLabel("账号:");
JLabel pwd1jla=new JLabel("设置密码:");
JLabel pwd2jla=new JLabel("确认密码:");
JLabel phojla=new JLabel("手机号:");
JLabel sexjla=new JLabel("性别:");
}
创建输入框
//创建输入框
JTextField namejtf=new JTextField(30);//30为输入框长度
JPasswordField pwd1jpf=new JPasswordField(30);
JPasswordField pwd2jpf=new JPasswordField(30);
JTextField phojtf=new JTextField(30);
JTextField yzmjtf=new JTextField(20);
创建按钮
//创建按钮
JButton yzmbtn=new JButton("获取验证码");
JButton regitbtn=new JButton("注册");
JRadioButton malebtn=new JRadioButton("男");//单选框
JRadioButton femalebtn=new JRadioButton("女");//单选框
ButtonGroup bg=new ButtonGroup();
bg.add(malebtn);
bg.add(femalebtn);
JRadioButton btn=new JRadioButton("我已阅读并同意服务协议");
JCheckBox zddljcb=new JCheckBox("自动登录");//复选框
JCheckBox jzmmjcb=new JCheckBox("记住密码");//复选框
将组件添加到窗体中
//将组件对象添加到窗体中
jf.add(namejla);
jf.add(namejtf);
jf.add(sexjla);
jf.add(malebtn);
jf.add(femalebtn);
jf.add(pwd1jla);
jf.add(pwd1jpf);
jf.add(pwd2jla);
jf.add(pwd2jpf);
jf.add(phojla);
jf.add(phojtf);
jf.add(yzmjtf);
jf.add(yzmbtn);
jf.add(btn);
jf.add(zddljcb);
jf.add(jzmmjcb);
jf.add(regitbtn);
可视化
//可视化
jf.setVisible(true);
总代码
import javax.swing.*;
import java.awt.*;
public class Register {
public void regitUI(){
//创建一个窗体类对象
JFrame jf=new JFrame();
jf.setSize(500,500);//尺寸
jf.setTitle("注册界面");//标题
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭方式
//创建一个布局类对象
FlowLayout f1=new FlowLayout();
jf.setLayout(f1);
//创建标签
JLabel namejla=new JLabel("账号:");
JLabel pwd1jla=new JLabel("设置密码:");
JLabel pwd2jla=new JLabel("确认密码:");
JLabel phojla=new JLabel("手机号:");
JLabel sexjla=new JLabel("性别:");
//创建输入框
JTextField namejtf=new JTextField(30);//30为输入框长度
JPasswordField pwd1jpf=new JPasswordField(30);
JPasswordField pwd2jpf=new JPasswordField(30);
JTextField phojtf=new JTextField(30);
JTextField yzmjtf=new JTextField(20);
//创建按钮
JButton yzmbtn=new JButton("获取验证码");
JButton regitbtn=new JButton("注册");
JRadioButton malebtn=new JRadioButton("男");//单选框
JRadioButton femalebtn=new JRadioButton("女");//单选框
ButtonGroup bg=new ButtonGroup();
bg.add(malebtn);
bg.add(femalebtn);
JRadioButton btn=new JRadioButton("我已阅读并同意服务协议");
JCheckBox zddljcb=new JCheckBox("自动登录");//复选框
JCheckBox jzmmjcb=new JCheckBox("记住密码");//复选框
//将组件对象添加到窗体中
jf.add(namejla);
jf.add(namejtf);
jf.add(sexjla);
jf.add(malebtn);
jf.add(femalebtn);
jf.add(pwd1jla);
jf.add(pwd1jpf);
jf.add(pwd2jla);
jf.add(pwd2jpf);
jf.add(phojla);
jf.add(phojtf);
jf.add(yzmjtf);
jf.add(yzmbtn);
jf.add(btn);
jf.add(zddljcb);
jf.add(jzmmjcb);
jf.add(regitbtn);
//可视化
jf.setVisible(true);
}
//程序入口
public static void main(String[] args) {
Register ui=new Register();
ui.regitUI();//对象名调用方法
}
}
运行结果
若要插入图片
ImageIcon icon=new ImageIcon("C:\\Users\\75192\\Desktop\\738cd04255327b3c66c19ae16816aa6b.jpeg");//括号内为图片地址
JLabel iconjla=new JLabel(icon);
jf.add(iconjla)
运行结果