需要导入的包
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
一、Jframe
JFrame jf=new JFrame("Hello");
创建
jf.setBounds(200,150,500,500);
设置位置和大小
jf.setLayout(new FlowLayout());
设置布局
jf.setVisible(true);
是否可视化
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
关闭方式
二、JDialog
JDialog jd=new JDialog(jf,"Dialog");
创建
jd.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
关闭方式
其他方法和Jframe相同
三、常用面板
Jpanel
JPanel jp=new JPanel(new FlowLayout());
JScollPane
四、标签组件
作用:显示文本或提示信息
JLabel jl=new JLabel("账号",SwingConstants.LEFT);
五、按钮组件
JButton jb=new JButton("按钮1");//创建
jb.setEnabled(true);//是否可用
jb.setBorderPainted(false);//显示边界
jf.add(jb);
六、单选多选组件
单选按钮
JRadioButton jrb1=new JRadioButton("man");
JRadioButton jrb2=new JRadioButton("woman");
ButtonGroup bg=new ButtonGroup();//创建按钮组
bg.add(jrb1);
bg.add(jrb2);
jf.add(jrb1);
jf.add(jrb2);
多选按钮
JCheckBox box1=new JCheckBox("睡觉",true);//默认选中
JCheckBox box2=new JCheckBox("游戏",false);
JCheckBox box3=new JCheckBox("学习",false);
jf.add(box1);
jf.add(box2);
jf.add(box3);
七、下拉列表组件
JComboBox box=new JComboBox();//创建下拉列表
box.addItem("--请选择学历--");
box.addItem("高中");
box.addItem("本科");
box.addItem("研究生");
jf.add(box);
八、菜单栏组件
JMenuBar bar=new JMenuBar();//创建菜单栏
JMenu menu1=new JMenu("菜单栏1");//创建菜单
JMenu menu2=new JMenu("菜单栏2");
JMenu menu3=new JMenu("菜单栏3");
JMenuItem item1=new JMenuItem("选项1");//创建项目
JMenuItem item2=new JMenuItem("选项2");
JMenuItem item3=new JMenuItem("选项3");
JMenuItem item4=new JMenuItem("选项4");
JMenuItem item5=new JMenuItem("选项5");
JMenuItem item6=new JMenuItem("选项6");
menu1.add(item1);//将项目添加到菜单中
menu1.add(item2);
menu1.add(item3);
menu2.add(item4);
menu3.add(item5);
menu3.add(item6);
bar.add(menu1);//将菜单添加到菜单栏中
bar.add(menu2);
bar.add(menu3);
jf.add(bar);
九、文本框组件
JTextField text=new JTextField("请输入",20);//创建文本框并初始化,设置宽度
jf.add(text);
十、密码框组件
JPasswordField psw=new JPasswordField("",20);//创建密码框并初始化,设置宽度
psw.setEchoChar('*');//设置回音字符
jf.add(psw);
十一、文本域组件
JTextArea area=new JTextArea(20,10);//创建文本域并设置行和列
area.setLineWrap(true);//设置自动换行
jf.add(area);
area.getText();//获取文本信息
十二、常用布局
流布局FlowLayout
jf.setLayout(new FlowLayout(FlowLayout.CENTER));
中心对齐
边界布局BorderLayout
jf.add(button1,BorderLayout.NORTH);
将按钮1加入到边界布局的北部
网格布局GridLayout
jf.setLayout(new GridLayout(3,3,10,20));
行、列、水平间距、竖直间距
十三、监听事件
jb.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
area.append("年轻人耗子尾汁!\n");
}
});