12.javaSwing相关组件和监听器

郜俊晤
2023-12-01

窗口
    JFrame
    //布局管理器
        void setLayout()
            FlowLayout//流式布局
            GridLayout//网络布局
            BorderLayout//边框布局
                东(EAST)西(WEST)南(SOUTH)北(NORTH)中(CENTER)
                
    // 设置窗体的标题
        void setTitle()
        
    //分别设置窗体的x轴y轴宽和高
        void setBounds(x,y,w,h)
        
    //设置窗体的宽高
        void setSize()
        
    //设置窗体的x轴y轴
        void setLocation()
        
    //设置窗体是否可见
        void setVisible()
        
    //设置当前窗体的图标
        void setIconImage()
        
    //将指定组件添加到窗体
        Component add()
        
    //随窗体关闭程序
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        
    //传入一个boolean值,表示是否可以调整大小
        setResizable()
        
    //设置本窗体消失    不同于点击x窗体消失但程序在后台继续运行
        dispose();
        
    //设置字体
        setFont()
            //传入一个new Font
            new Font("字体",格式,大小)
                //字体为字体名称    格式一般为0        大小自定义设置
        
        //扩展
            //设置窗体边框是否不可见 true为不可见false为可见    默认值为false
            void setUndecorated();
            //返回屏幕宽度
            Toolkit.getDefaultToolkit().getScreenSize().width;
            //返回屏幕高度
            Toolkit.getDefaultToolkit().getScreenSize().height;
        
        
组件
    //标签组件
        JLabel//实例化后传入字符串表示文字,传入图片表示图片
            Icon//用于存储图片的数据类型
            new ImageIcon("路径")//用于将指定路径的图片导入java程序
    
    //文本框组件
        JTextField
            getText()//返回文本框里的文本
            
    //密码框组件
        JPasswordField
    
    //按钮组件
        JButton//可传入文字或图片
    
    //面板组件
        JPanel//类似于容器,可以在面板内设置布局
    
    //选择框组件
        JComboBox
            addItem()//添加下拉选项
            setMaximumRowCount()//下拉后显示最大行数
                getSelectedItem()//返回当前选中的内容
        
    //单选按钮
        JRadioButton
            ButtonGroup//单选按钮组,添加至组中的单选按钮只能选中一个
        
    //复选按钮
        JCheckBox
    
    //表格
        JScrollPane()//滚动面板对象        要吧表格放在里面
            JTable(二维数组,一维数组)//二维数组为表格里的内容,一维数组为标题
            JTable(模板)//可以添加模板
                DefaultTableModel(Vector 内容,Vector 列名);//Vector为List的子类
        getSelectedRow();//返回当前选中的行数
        getValueAt(行数,列数);//返回某行某列的值    行数和列数都是从0开始
    
    //菜单栏
        JMenuBar
            JMenu//菜单条,可添加至菜单栏中
                JMenuItem//菜单选项,可添加至菜单条中
    setMnemonic()//为菜单设置快捷方式
    
    //会话框
        JOptionPane.showMessageDialog(组件,"内容");//弹出一个名为消息的窗口
            (组件一般为null)    (内容)
        JOptionPane.showMessageDialog(组件,"内容","标题",数字);//自定义窗口
            (组件一般为null)    (内容)    (标题内容)    (数字1为圆形i图标    数字2为三角形i图标        数字3为方形?图标)
        JOptionPane.showMessageDialog(组件,"内容","标题",数字,Icon);//自定义窗口
            (组件一般为null)    (数字1为圆形i图标    数字2为三角形i图标        数字3为方形?图标)    (Icon图标文件,自定义的图标)

    
    
事件
    //用于接收事件的点击
        ActionListener//包括按钮、菜单项、文本框点击回车
            actionPerformed(ActionEvent e)//接收点击
            //扩展
                getActionCommand()//返回对应的参数
    
    //处理选项事件的监听器
        ItemListener//包括单选按钮、复选按钮、
            itemStateChanged(ItemEvent e)//选中和取消选中都会触发
            //扩展
                getItem()//返回受影响的项目,返回类型为String
        
    //接收键盘事件
        KeyListener
            keyTyped(KeyEvent e)//键盘按下
            keyReleased(KeyEvent e)//键盘松开
            keyPressed(KeyEvent e)//键盘键入建    不知道什么意思,但会比键盘按下早执行
            //扩展
                e.getKeyChar()//返回按下的键值,返回类型为char
        
    //处理鼠标事件
        MouseListener
            mouseReleased(MouseEvent e)//鼠标松开
            mousePressed(MouseEvent e)//鼠标按下
            mouseExited(MouseEvent e)//鼠标离开
            mouseEntered(MouseEvent e)//鼠标进入
            mouseClicked(MouseEvent e)//鼠标单击    按下松开
            //扩展
                e.getX()//获得鼠标的x轴坐标
                e.getY()//获得鼠标的y轴坐标

    //监听文本组件内容改变
        TextListener//只能用于文本组件
            textValueChanged(TextEvent e)//当文本的值已更改时触发
            文本组件//写文本的,特别low一个
                TextArea//创建一个文本框,可以在里面写东西
        
    //接收组件是否获得焦点
        FocusListener
            focusLost(FocusEvent e)//失去焦点时触发
            focusGained(FocusEvent e)//获得焦点时触发


JDialog//与窗口相同
    setModal()//传入一个Boolean类型,true为模态,false为非模态

 类似资料: