java学习笔记69--组件,容器,布局管理器的使用

本文介绍了Java GUI编程中的常用组件、容器和布局管理器。讲解了Frame、Panel、JFrame、JPanel的区别,并通过实例展示了如何使用JButton、JCheckBox、JRadioButton、JList等组件。同时,详细阐述了BorderLayout、FlowLayout、GridLayout和CardLayout四种布局管理器的使用方法,以及如何自定义组件位置。
摘要由CSDN通过智能技术生成

1)常用的容器类,Frame和Panel
    java.awt.Frame类:
        public class Frame extends Window{}
        java.awt.Frame是带有标题和边框的顶层窗口,它是java.awt.Window类的直接子类

        例如:
            Frame frame = new Frame();
            frame.setTitle("我的容器");
            frame.setSize(500,500);
            frame.setLocation(700, 300);
            frame.setBackground(Color.lightGray);
            frame.setResizable(true);
            frame.setVisible(true);
        
        注:frame要显示出来,最后一定要设置它的的可见性为true
        
        思考:怎么能让窗口每次位于屏幕的正中间
        Toolkit toolkit = Toolkit.getDefaultToolkit();
        int width = (int) toolkit.getScreenSize().getWidth();
        int height = (int) toolkit.getScreenSize().getHeight();

    java.awt.Panel类:
        public class Panel extends Container{}
        Panel是最简单的容器类,也成为面板,应用程序可以将其他组件放在面板提供的空间内,这些组件包括其他面板(嵌套)。
        注:Panel面板不能单独显示,必须把它放到Frame中

        例如:运行后显示不了,设置Panel的大小位置以及可见性也没用
            Panel panel = new Panel();
            panel.setSize(400, 400);
            panel.setLocation(700, 300);
            panel.setBackground(Color.blue);
            panel.setVisible(true);
        
        例如:运行后可以显示
            Frame frame = new Frame();
            Panel panel = new Panel();
            panel.setBackground(Color.blue);

            frame.setSize(400, 400);
            frame.setLocation(700, 300);
            frame.add(panel);
            frame.setVisible(true);

2)常用的容器类,JFrame JPanel    
    javax.swing.JFrame类:
        public class JFrame extends Frame{}
        
        例如:
            JFrame jFrame = new JFrame();
            jFrame.setTitle("我的容器");
            jFrame.setResizable(true);
            jFrame.setSize(500,500);
            jFrame.setLocation(700, 300);
            jFrame.setBackground(Color.lightGray);
            jFrame.setVisible(true);   

       javax.swing.JPanel类:
           public class JPanel extends JComponent
          JPanel是一般轻量级容器,作用及用法和java.awt.Panel类似,它也是不能单独显示的。
    

3)常用的组件类(主要以Swing的为主,除非Swing中没有该组件)
        javax.swing.JButton    按钮
            例如:
                JFrame jFrame = new JFrame();
                JPanel panel = new JPanel();
                
                JButton btn = new JButton("登录");
                panel.add(btn);
                
                jFrame.setSize(400, 400);
                jFrame.setLocation(700, 300);
                jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                jFrame.add(panel);
                jFrame.setVisible(true);

        javax.swing.JCheckBox 复选框
            例如:
            JFrame jFrame = new JFrame();
            JPanel panel = new JPanel();
            
            JCheckBox jck1 = new JCheckBox("篮球");
            JCheckBox jck2 = new JCheckBox("足球");
            panel.add(jck1);
            panel.add(jck2);
            
            jFrame.setSize(400, 400);
            jFrame.setLocation(700, 300);
            jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            jFrame.add(panel);
            jFrame.setVisible(true);
        

        javax.swing.ButtonGroup  按钮组
        javax.swing.JRadioButton 单选框
            例如:
            JFrame jFrame = new JFrame();
            JPanel panel = new JPanel();
            
            //需要把俩个单选按钮放到ButtonGroup中,表示为一组
            ButtonGroup bg = new ButtonGroup();
            JRadioButton rbtn1 = new JRadioButton("男");
            JRadioButton rbtn2 = new JRadioButton("女",true);
            bg.add(rbtn1);
            bg.add(rbtn2);

            panel.add(rbtn1);
            panel.add(rbtn2);
     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值