GUI(图形用户界面)
一、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(网络包布局管理器)
- 非规则的矩阵
- FlowLayout(流式布局管理器)
五、建立一个简单的窗体
- Container常用子类: Window 、Pannel(面板,不能单独存在)
- window常用子类: Frame、 Dialog
- 简单的窗体的创建过程:
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(图形用户界面)的更多相关文章
- 黑马程序员_<<GUI(图形用户界面)--------1>>
--------------------ASP.Net+Android+IOS开发..Net培训.期待与您交流! -------------------- 1. GUI图形用户界面 1.简述 Gra ...
- java第八节 GUI/图形用户界面
/* *第8讲 GUI/图形用户界面 * AWT的基础知识 * GUI全称是Graphical User Interface,即图形用户界面 * JDK中提供了AWT和Swing两个包,用于GUI程序 ...
- python学习笔记(十 一)、GUI图形用户界面
python图形用户界面就是包含按钮.输入框.选择框等组件的窗口.主要依赖与工具包进行代码编写.python GUI工具包并发互斥的,你可以选择多个工具包进行安装,有极大选择空间.每个工具包都有不同用 ...
- GUI 图形用户界面 [学习笔记]
今晚返璞归真了一把, 系统了解了一下GUI的有关知识: GUI(Graphical User Interface) 图形用户界面 是指采用图形方式显示的计算机操作用户接口.与早期计算机使用的命令行界面 ...
- linux系统中firewalld防火墙管理工具firewall-config(GUI图形用户界面)
firewall-config是firewalld防火墙管理工具的GUI(图形用户界面)版本,几乎可以实现所有以命令行来执行的操作. firewall-config的界面如下图(在终端直接运行fire ...
- python之GUI图形用户界面 2014-4-7
#图形用户界面1.下载和安装wxPython2.创建并显示一个框架import wx #导入wxPythonapp=wx.App()win=wx.Frame(None)win.Show() #调用窗口 ...
- Python学习笔记:wxPython(GUI图形用户界面)
wxPython是一套基于Python的第三方GUI插件,可用Python制作丰富的图形化界面程序. 安装:pip install wxPython 或者 网站下载安装https://pypi.org ...
- java GUI(图形用户界面)
GUI Graphical User Interface(图形用户接口). 用图形的方式,来显示计算机操作的界面,这样更方便更直观. CLI Command line User Interface ( ...
- Unity3D GUI图形用户界面系统
1.skin变量 using UnityEngine; using System.Collections; public class Skin : MonoBehaviour { public GUI ...
随机推荐
- python的一些学习资料(持续更新中)
Markdown在线编辑器 廖雪峰官方博客[基础入门好资料] python-guide[传说中的巨牛写的] the5fire的技术博客[全职python程序员博客]
- Checbox的操作含已选、未选及判断代码
Checbox的操作包括已选.未选.判断等等,下面有个不错的示例,使用jquery完成,感兴趣的朋友可以参考下 $("#chk1").attr("checked" ...
- 将UIImage保存到iOS照片库和对应程序沙盒中-b
1.保存到iOS照片库需要引入QuartzCore.framework框架,具体代码如下:.h文件#import <QuartzCore/QuartzCore.h>UIImageView ...
- CSAPP(深入理解计算机系统)读后感
9月到10月8号,包括国庆七天,大概每天5小时以上的时间,把Computer System: A Programmer Perspective 2rd version(深入理解计算机系统)的英文版啃完 ...
- android中viewPager+fragment实现的屏幕左右切换(进阶篇)
Fragment支持在不同的Activity中使用并且可以处理自己的输入事件以及生命周期方法等.可以看做是一个子Activity. 先看一下布局: 1 <LinearLayout xmlns:a ...
- 关于后缀数组的倍增算法和height数组
自己看着大牛的论文学了一下后缀数组,看了好久好久,想了好久好久才懂了一点点皮毛TAT 然后就去刷传说中的后缀数组神题,poj3693是进化版的,需要那个相同情况下字典序最小,搞这个搞了超久的说. 先简 ...
- OA学习笔记-004-Spring2.5配置
一.jar包 (1)spring.jar (2)Aop包 aspectjrt.jaraspectjweaver.jar (3)动态代理 cglib-nodep-2.1_3.jar (4)日志 comm ...
- Android Bitmap是不能比较的,这样做是错误的
代码1: Bitmap dir = BitmapFactory.decodeResource(context.getResources(), R.drawable.netdisc_search_lis ...
- Android开源项目发现---ProgressBar 篇(持续更新)
1. SmoothProgressBar 水平进度条 项目地址:https://github.com/castorflex/SmoothProgressBar Demo地址:https://play. ...
- 最全的JAVA源码整合下载
http://www.360doc.com/content/14/0602/00/11407612_382890953.shtml http://www.360doc.com/content/14/0 ...