一、GUI(图形用户界面)

  • GUI

    • Graphical User Interface(图形用户接口)
    • 用图形的方式,来显示计算机操作的界面,这样更方便更直观
  • CLI
    • Command line User Interface (命令行用户接口)
    • 就是常见的Dos命令行操作。
    • 需要记忆一些常用的命令,操作不直观。
  • 举例
    • 比如:创建文件夹,或者删除文件夹等
  • Java为GUI提供的对象都存在java.Awt和javax.Swing两个包中。

二、Awt和Swing

  java.Awt:Abstract Window Tookit(抽象窗口工具包),需要调用本地系统方法实现功能。属于重量级控件。

  java.Swing:在AWT基础上,建立的一套图形界面系统,其中提供了更多的组件,而且完全由Java实现。增强了可移植性,属于轻量级控件。

三、继承关系图

   |--Component

     |--Container:为容器,是一个特殊的组件

           该组件中可以通过add方法添加其他组件进来

        |--Window

            |--Frame

            |--Dialog

                |--FileDialog

        |--Pannel

     |--Button

     |--Label

     |--Checkbox

     |--TextComponent

        |--TextArea

        |--TextField

四、布局管理器

  1、容器中的组件的组件排放方式——布局

  2、常见的布局管理器:

    • FlowLayout(流式布局管理器)

      • 从左到右的顺序排列
    • BorderLayout(边界布局管理器)
      • 东,南,西,北,中
      • Frame默认的布局管理器
    • GridLayout(网络布局管理器)
      • 规则的矩阵
    • GardLayout(卡片布局管理器)
      • 选项卡
    • GridBagLayout(网络包布局管理器)
      • 非规则的矩阵

五、建立一个简单的窗体

  1. Container常用子类: Window 、Pannel(面板,不能单独存在)
  2. window常用子类: Frame、 Dialog
  3. 简单的窗体的创建过程:
Frame f = new Frame(“my window”);
f.setLayout(new FlowLayout());
f.setSize(500,400);//设置窗体大小
f.setLocation(300,200);//设置窗体出现在屏幕的位置
f.setVisible(true);

六、事件监听机制组成

  1、将监听器注册到事件源;  监听器——事件源(组件)

  2、有监听器所监听的动作于事件源上;  外部动作——事件源

  3、产生事件对象;   事件源——事件对象

  4、将事件对象传给事件处理方式;事件对象——监听器

 事件监听机制:

  • 确定事件源(容器或者组件)
  • 通过事件源对象的addXXXListener()方法将侦听器注册到该事件源上
  • 该方法中接受XXXListener的子类对象,或者XXXListener的子类XXXAdaper的子类对象
  • 一般用匿名内部类来表示
  • 在覆盖方法的时候,方法的参数一般是XXXEvent类型的变量接受
  • 事件源触发后会把事件打包对象传递给该变量。(其中包括事件源对象,通过getSource()或者,getComponent()获取。)

小练习: 1、通过按钮关闭窗口  2、在窗口中通过按钮创建按钮

    3.键盘事件和鼠标事件

七、菜单继承体系

    MenuComponent

      |--MenuBar

      |--MenuItem

        |--Menu

  先创建菜单条,再创建菜单,每一个菜单中建立菜单项

  也可以通过菜单添加到菜单中作为子菜单

  通过setMenuBar()方法,将菜单添加到Frame中

练习: 写一个简单的记事本程序。

GUI(图形用户界面)的更多相关文章

  1. 黑马程序员_<<GUI(图形用户界面)--------1>>

    --------------------ASP.Net+Android+IOS开发..Net培训.期待与您交流! -------------------- 1.  GUI图形用户界面 1.简述 Gra ...

  2. java第八节 GUI/图形用户界面

    /* *第8讲 GUI/图形用户界面 * AWT的基础知识 * GUI全称是Graphical User Interface,即图形用户界面 * JDK中提供了AWT和Swing两个包,用于GUI程序 ...

  3. python学习笔记(十 一)、GUI图形用户界面

    python图形用户界面就是包含按钮.输入框.选择框等组件的窗口.主要依赖与工具包进行代码编写.python GUI工具包并发互斥的,你可以选择多个工具包进行安装,有极大选择空间.每个工具包都有不同用 ...

  4. GUI 图形用户界面 [学习笔记]

    今晚返璞归真了一把, 系统了解了一下GUI的有关知识: GUI(Graphical User Interface) 图形用户界面 是指采用图形方式显示的计算机操作用户接口.与早期计算机使用的命令行界面 ...

  5. linux系统中firewalld防火墙管理工具firewall-config(GUI图形用户界面)

    firewall-config是firewalld防火墙管理工具的GUI(图形用户界面)版本,几乎可以实现所有以命令行来执行的操作. firewall-config的界面如下图(在终端直接运行fire ...

  6. python之GUI图形用户界面 2014-4-7

    #图形用户界面1.下载和安装wxPython2.创建并显示一个框架import wx #导入wxPythonapp=wx.App()win=wx.Frame(None)win.Show() #调用窗口 ...

  7. Python学习笔记:wxPython(GUI图形用户界面)

    wxPython是一套基于Python的第三方GUI插件,可用Python制作丰富的图形化界面程序. 安装:pip install wxPython 或者 网站下载安装https://pypi.org ...

  8. java GUI(图形用户界面)

    GUI Graphical User Interface(图形用户接口). 用图形的方式,来显示计算机操作的界面,这样更方便更直观. CLI Command line User Interface ( ...

  9. Unity3D GUI图形用户界面系统

    1.skin变量 using UnityEngine; using System.Collections; public class Skin : MonoBehaviour { public GUI ...

随机推荐

  1. Python 手册(一)

    Python 手册 Guido van Rossum Fred L. Drake,  Jr., editor PythonLabs Email: python-docs@python.org Rele ...

  2. Navigation学习笔记

    ***************************** 使用storyboard导航********************************* storyboard方式相对简单. 在弹出来 ...

  3. C的快速趋向实验 -->

    今天刚学到C的一个新玩法,非常有意思,叫趋向于,写作“-->”,比如说如果要实现一个倒数的程序,我们可以定义一个变量 counter,然后让它趋向于0... #include <stdio ...

  4. tar 分包压缩与合并

    要将目录logs打包压缩并分割成多个1M的文件,可以用下面的命令: tar cjf - logs/ |split -b 1m - logs.tar.bz2.完成后会产生下列文件: logs.tar.b ...

  5. bzoj4038: 医疗援助

    Description 一只带着先进设备和药物的医疗团队来到了埃博拉病毒疫区的某个非洲国家.这个国家有n个村庄,均坐落在该国唯一的一条公路旁,n个村庄依次标号为1,2,…n.第i个村庄有a_i个埃博拉 ...

  6. 这是从word发的第一篇博客。

    喜欢做的事,怎么样都不会厌倦. 以前只知道office功能强大,但不太清楚到底还能干些啥,印象最深的是outlook了,自己也在用,挺好 今天偶然发现,word还能发布博客,真是太惊喜了 这算是一篇实 ...

  7. 机器学习的数学基础(1)--Dirichlet分布

    机器学习的数学基础(1)--Dirichlet分布 这一系列(机器学习的数学基础)主要包括目前学习过程中回过头复习的基础数学知识的总结. 基础知识:conjugate priors共轭先验 共轭先验是 ...

  8. 天草(初级+中级+高级)VIP和黑鹰VIP破解教程(全部iso下载地址)

    以下就是我收集的教程地址,之前我收集到的都是一课一课下载的,虽然这样,我也下载完了天草的全部课程.这里分享的是在一起的iso文件,比起一课课下载爽多了.~~ 还有这些教程都是从零起点开始教的,不用担心 ...

  9. C# 的 WCF文章 消息契约(Message Contract)在流(Stream )传输大文件中的应用

    我也遇到同样问题,所以抄下做MARK http://www.cnblogs.com/lmjq/archive/2011/07/19/2110319.html 刚做完一个binding为netTcpBi ...

  10. leetcode面试准备:Lowest Common Ancestor of a Binary Search Tree & Binary Tree

    leetcode面试准备:Lowest Common Ancestor of a Binary Search Tree & Binary Tree 1 题目 Binary Search Tre ...