GUI (图形界面)知识点

一:组件知识点

JTextField:    作用:  定义文本域,只支持单行输入。

               使用:  定义文本域:  JTextField jtf=new JTextField(20); //20为列数(列:近似平均字符宽度,它与平台有关)

                       获取值:      String jtfText=jtf.getText();

                       清空文本域    jta.setText("");

JTextArea:    作用:  定义文本区,   支持多行文本的输入,可以包含滚动条。

               使用:  定义文本区:   JTextArea jta=new JTextArea(20,30);//20为行数,30为列数

                       获取值:       String jtaText=jta.getText();

                       清空文本区:   jta.setText("");

                       设置值:       jta.append(值);  //将值追加到文本区,仍保留文本区中的原内容

                                      jta.setText(值); //将值添加到文本区,并覆盖文本区原有内容 

 

JComboBox      作用:  定义下拉列表

               使用:  定义下拉列表:  JComboBox country=new JComboBox();   

                       设置值:       country.addItem("中国");

                       获取值:       String c=(String) country.getSelectedItem();

JCheckBox:     作用:  定义复选框,用于多选项的用户输入。

               使用:  定义复选框:   JTextBox cbasketball=new JTextBox("篮球");

                       获取值:       当被选择时   cbasketball.isSelected()==true;

JRadioButton:  作用:  单选按钮

               使用:  定义并设置值:  JRadioButton man=new JRadioButton("男",true);  //默认选择man

                                       JRadioButton woman=new JRadioButton("女");

                                       ButtonGroup bg=new ButtonGroup();              //定义组

                                       bg.add(man);bg.add(woman);                      //添加到组

JMenu:         作用:  菜单

JMenuItem:     作用:  菜单项

               定义:  JMenuBar mb=new JMenuBar();      //定义菜单组

                       JMenu mFile=new JMenu();         //定义菜单

                       JMenuItem exit=new JMenuItem();  //定义菜单项

                       mb.add(mFile);                   //将菜单添加到菜单组

                       mFile.add(exit);                 //将菜单项添加到菜单

二:布局管理器知识点:

BorderLayout: 边框布局 将容器分为东南西北中五个区域,每个区域最多添加一个组件。

FlowLayout:   流式布局  将按钮水平放置,直到这一行没有位置,再转向下一行

GirdLayout:   网格布局  将容器分割成一个个网格,每个网格内放置一个组件

JFrame 的缺省布局管理器(即默认的)是  BorderLayout

JPanel 的缺省布局管理器 是 FlowLayout

三:事件

事件源:   可以产生事件的对象(课本上的定义)

           可以引导事件发生的按钮或其他组件,比如点某个按钮,窗口就关闭,这个按钮就是事件源(我写的,辅助理解)

事件:     描述事件源改变的对象(课本上的对象)

           对事件源进行操作时,事件源的状态就会变化,就会产生一个事件,比如点一下按钮就会产生事件(我写的,辅助理解)       

如何定义监听器类:使该类继承监听器接口

    例如:  public class Demo implement ActionListener{

                 public void actionPerformed(ActionEvent e){

}

            }

            Demo将成为可以处理ActionEvent事件的监听器

如何注册监听器:

     例如: button.addActionListener(new ActionListener()){

                 public void actionPerformed(ActionEvent e){

}

             }

 

 

是否可以注册多个监听器(是):

       所有AWT事件源均支持监听器的多点传送模型。 可以将同一事件发送到多个监听器对象。 需要向一个事件源添加多个监听器,

  以便使所有注册的监听器都能够对事件源生成的事件作出响应。

上一篇:你好,C++(35)类是如何藏私房钱的?6.2.4 拷贝构造函数


下一篇:iOS原生实现二维码拉近放大