一:组件知识点

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事件源均支持监听器的多点传送模型。 可以将同一事件发送到多个监听器对象。 需要向一个事件源添加多个监听器,

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

GUI (图形界面)知识点的更多相关文章

  1. Quartz(GUI)图形界面程序----Quartz Web

    下载.设置和运行Quartz(GUI)图形界面程序----Quartz Web 一.获取Quartz Web程序(Quartz GUI).早期的 Quartz 框架开发者意识到一个 GUI 对于某类用 ...

  2. centOS7下安装GUI图形界面

    1.如何在centOS7下安装GUI图形界面 当你安装centOS7服务器版本的时候,系统默认是不会安装GUI的图形界面程序,这个需要手动安装CentOS7 Gnome GUI包. 2.在系统下使用命 ...

  3. CentOS7安装GUI图形界面

    本文转自centOS7下安装GUI图形界面,侵权删. 1. 在命令行下 输入下面的命令来安装Gnome包. # yum groupinstall "GNOME Desktop" & ...

  4. CentOS7 下安装GUI图形界面GNOME

    在安装Gnome包之前,需要检查一下网络是否有网络(使用ping www.baidu.com) 一.先装X windows,-y表示参数同意所有软件安装操,当出现 Complete!说明这里安装成功了 ...

  5. CentOS7安装Gnome GUI图形界面

    CentOS7安装Gnome GUI图形界面  最小化安装了.当时没 注意,后面一步步安装完了,结果直接启动到命令行模式了. 晕,又不想重新安装,直接想从命令行模式安装.在网上找了半天,终于找到一点小 ...

  6. 虚拟机下Ubuntu没有GUI图形界面,解决方法

    先说下快捷键,CLI切换到GUI:Ctrl+Alt+F7: GUI切换到CLI:Ctrl+Alt+F1. 今天折腾虚拟机时,打开Ubuntu后显示的是命令行界面,按快捷键后并没转换到图形界面,而是一直 ...

  7. CentOS 7安装Gnome GUI 图形界面

    当你安装centos服务器版本的时候,系统默认是不会安装 CentOS 的图形界面程序的,比如:gnome或者kde, 那么如果你想在图形界面下工作的话,可以手动来安装CentOS Gnome GUI ...

  8. Java GUI图形界面开发工具

    Applet 应用程序     一种可以在 Web 浏览器中执行的小程序,扩展了浏览器中的网页功能. 缺: 1.需要下载 Applet 及其相关文件 2.Applet 的功能是受限制的 优: 3.无需 ...

  9. [转载]CentOS 7安装Gnome GUI 图形界面

    原文链接:http://www.centoscn.com/image-text/config/2015/0528/5552.html 当你安装centos服务器版本的时候,系统默认是不会安装 Cent ...

  10. java之 22天 GUI 图形界面编程(一)

    转自:http://takeme.iteye.com/blog/1876850 GUI(图形用户界面) import java.awt.Button; import java.awt.FlowLayo ...

随机推荐

  1. C#开源汇总

    原文:C#开源汇总 商业协作和项目管理平台-TeamLab 网络视频会议软件-VMukti 驰骋工作流程引擎-ccflow [免费]正则表达式测试工具-Regex-Tester Windows-Pho ...

  2. java socket 的参数选项解读(转)

    java socket中有很多参数可以选择,这篇博客的目的是沉淀出这些参数的语义和用法,供自己以后查阅. 1.java socket参数选项总览 在JDK1.6中有如下参数选项: 1 public f ...

  3. 在RHEL上安装Thrift(支持C++)的若干问题 » 编码无悔 / Intent & Focused

    在RHEL上安装Thrift(支持C++)的若干问题 » 编码无悔 / Intent & Focused [原创]在RHEL上安装Thrift(支持C++)的若干问题    2010年12月1 ...

  4. POJ 3652 & ZOJ 2934 & HDU 2721 Persistent Bits(数学 元)

    主题链接: PKU:http://poj.org/problem?id=3652 ZJU:http://acm.zju.edu.cn/onlinejudge/showProblem.do? probl ...

  5. LNK1207: incompatible PDB format in********

    LNK1207: incompatible PDB format in******** VC中错误:LINK : fatal error LNK1207: incompatible PDB forma ...

  6. 用Java写个ftp传输类实现文件的上传和下载,用ikvmc转成dll

    1.Java类: package com.wjy.ftp.transmission; import java.io.File; import java.io.FileOutputStream; imp ...

  7. ArrayList线程不安全?

    ArrayList是线程不安全的,轻量级的.如何使ArrayList线程安全? 1.继承Arraylist,然后重写或按需求编写自己的方法,这些方法要写成synchronized,在这些synchro ...

  8. hdu3570, 超级简单的斜率优化dp

    dp[i] = dp[j] + (a[i] - a[j])^2 + m;展开得 dp[i] = min{dp[j] + a[i]^2 + a[j]^2 - 2*a[i]*a[j] + m}其中a[i] ...

  9. windows phone 加速计(5)

    原文:windows phone 加速计(5) 在windows phone 中存在着加速计,我们可以利用加速计获得用户手机的状态,根据手机状态调整我们的程序,这样会更人性化:windows phon ...

  10. SVM-SVM概述

    (一)SVM背景资料简介 支持向量机(Support Vector Machine)这是Cortes和Vapnik至1995首次提出,样本.非线性及高维模式识别中表现出很多特有的优势,并可以推广应用到 ...