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事件源均支持监听器的多点传送模型。 可以将同一事件发送到多个监听器对象。 需要向一个事件源添加多个监听器,
  以便使所有注册的监听器都能够对事件源生成的事件作出响应。


 

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文地址:https://www.cnblogs.com/dingxiaoyue/p/4931854.html