Java-Swing(常用控件+3种布局方式)
基础组件
1.分类:输入框(账号框和密码框),按钮,文本标签,文本域,文件选择器,单选框,复选框,下拉框
2.作用:用来美化窗体
3.使用方式
(1)使用api查阅指定的组件名称并实例化该组件
(2)将实例化的基础组件添加到中间组件中
(3)将中间组件添加到顶层组件(窗体)中
4.具体基础组件
JTextField 普通文本输入框
JPasswordField 密码框
JButtom 按钮
JLabel 文本标签
JTextArea 文本域
JFlieChooser 文本选择器
JRadioBuccon 单选按钮
JCheckBox 复选按钮
JComboBox 下拉框
5.中间组件
JPanel 面板(使用率最高)
JScrollPane 滚动面板
public BaseComponetDemo(){ this.setTitle("基础组件");//设置标题 this.setSize(600,500);//设置长和宽 this.setDefaultCloseOperation(3);//设置最小化,最大化,关闭 this.setLocationRelativeTo(null);//设置窗体居中 //建立中间组件JPanel面板 JPanel jp = new JPanel(); //设置JPanel面板的背景颜色 jpanel.setBackground(Color.PINK); //将基础组件添加到中间组件 //标签 JLabel //1.api查阅组件名称并实例化 JLabel jla = new JLabel("用户登录"); // 设置字体大小(加粗,风格) jla.setFont(new Font("宋体", Font.BOLD, 30)); // 设置字体颜色 jla.setForeground(Color.BLUE); //2.将实例化的基础组件添加到中间组件中 jp.add(jla); //按钮 JButton //按钮的构造函数:1.可以在、传入字符串 //2.可以传入图片 JButton jb = new JButton("登录"); //设置按钮不可编辑(没必要) // jba.setEnabled(false); // 设置按钮的大小 jba.setPreferredSize(new Dimension(500, 50)); // 设置字体大小 jba.setFont(new Font("宋体", Font.BOLD, 30)); // 设置背景颜色 jba.setBackground(Color.green); // 设置鼠标的手势 jba.setCursor(new Cursor(Cursor.HAND_CURSOR)); jpanel.add(jb); //普通文本输入框 JTextField JTextField jtfa = new JTextField(15); jpanel.add(jtfa); //密码输入框 JPasswordField JPasswordField jpfa = new JPasswordField(15); jpanel.add(jpfa); //单选按钮 JRadioButton //注意事项:在窗体中使用单选按钮组件时,必须将多个对象进行合成一组,在一组内只能选择一个 //单选按钮分组: ButtonGroup JRadioButton jrba = new JRadioButton("男"); JRadioButton jrbb = new JRadioButton("女"); //创建分组对象 ButtonGroup bg = new ButtonGroup(); //将单选按钮加入分组对象中即可 bg.add(jrba); bg.add(jrbb); jpanel.add(jrba); jpanel.add(jrbb); //复选按钮 JCheckBox JCheckBox jcba = new JCheckBox("吃饭"); jpanel.add(jcba); JCheckBox jcbb = new JCheckBox("睡觉"); jpanel.add(jcbb); JCheckBox jcbc = new JCheckBox("打呼噜"); jpanel.add(jcbc); JCheckBox jcbd = new JCheckBox("看电影"); jpanel.add(jcbd); JCheckBox jcbe = new JCheckBox("做运动"); jpanel.add(jcbe); //下拉框 JComboBox JComboBox jcbaa = new JComboBox(); //往下拉框中加载数据 jcbaa.addItem("王大翠"); jcbaa.addItem("王大锤"); jcbaa.addItem("王大臣"); jcbaa.addItem("王达成"); jcbaa.addItem("王大吹"); jcbaa.addItem("王大垂"); jpanel.add(jcbaa); //文本域 JTextArea JTextArea jtaa = new JTextArea(5, 50); //问题:内容增多后,文本域的高度会溢出。 //解决办法:加载滚动条 //实例化一个滚动条面板(中间组件) JScrollPane JScrollPane jsp = new JScrollPane(jtaa); jpanel.add(jsp); //文件选择器 JFileChooser JFileChooser jfc = new JFileChooser(); jpanel.add(jfc); // 获取窗体后将jpanel中间组件面板加入其中 this.getContentPane().add(jpanel); this.setVisible(true); public static void main(String[] args) { new BaseComponentDemo(); } }
上一篇:
通过多线程提高代码的执行效率例子
下一篇:
SpringBoot微服务的发布与部署