第9章-图形用户界面

第9章-图形用户界面

ID:36637088

大小:1.05 MB

页数:59页

时间:2019-05-09

第9章-图形用户界面_第1页
第9章-图形用户界面_第2页
第9章-图形用户界面_第3页
第9章-图形用户界面_第4页
第9章-图形用户界面_第5页
资源描述:

《第9章-图形用户界面》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第9章图形用户界面本章学习目标了解图形用户界面的历史及其设计原则。掌握AWT组件集中的各类组件。理解AWT事件处理机制。学会编写常见事件处理程序。了解Swing组件集及其简单编程。概述图形用户界面,英文全称为GraphicalUserInterface,一般习惯简称为GUI。图形化用户界面大大方便了人机交互,是一种结合计算机科学、美学、心理学、行为学,及各商业领域需求分析的人机系统工程,强调人—机—环境三者作为一个系统进行总体设计。设计原则用户至上的原则交互界面要友好配色方案要合理主流开发工具集基于Java的图形用户界面开发工具(即组件集)最主流的有三种:AWTSwingS

2、WT/JFace随Sun的JDK一起发布源于IBM的Eclipse开源项目AWT组件集AWT由JDK的java.awt包提供,里面包含了许多可以用来建立图形用户界面(GUI)的类,一般称这些类为组件(component)图9-1AWT组件的继承关系图AWT组件集AWT组件大致可以分为以下三类:(1)容器类组件(2)布局类组件(3)普通组件类容器类组件容器类组件由Container类派生而来,常用的有Frame类和Dialog类,以及Panel类型的Applet类。这些容器类组件可以用来容纳其他普通组件或者甚至是容器组件自身,起到组织用户界面的作用。容器类组件有一定的范围和位

3、置,并且它们的布局从整体上也决定了所容纳组件的位置因此,在界面设计的初始阶段,首要考虑的就是容器类组件的布局。布局组件类布局类组件是非可视组件,它们能很好地在容器中布置其他可视组件。AWT提供了五种基本的布局方式:FlowLayout、BorderLayout、GridLayout、GridBagLayout和CardLayout等,它们均为Object类的子类,如下图9-2所示。图9-2布局方式FlowLayoutFlowLayout是最简单的一种布局方式,被容纳的可视组件从左向右,从上至下依次排列,若一组件在本行放置不下,就自动排到下一行的开始处,该方式为Panel类和

4、Applet类容器的默认布局方式。示例9-1源程序BorderLayoutBorderLayout布局方式的特点是:将容器划分为“东”“西”“南”“北”“中”五个区。每个区可以摆放一个组件,因此最多可以在BorderLayout的容器组件中放置五个子组件。Frame或Dialog容器类组件的默认布局方式。示例9-3源程序GridLayoutGridLayout布局将容器划分为行和列的网格,每个网格单元可以放置一个组件,组件通过add()方法从上到下,从左至右顺序加入网格各个单元中GridLayout布局允许在组件之间设置水平和垂直间距,间距同样以像素为单位表示,如下为创建6

5、行6列,水平间隔和垂直间隔均为10个像素的GridLayout布局对象:setLayout(newGridLayout(6,6,10,10));示例9-4源程序图9-10GridLayout布局界面GridBagLayoutGridBagLayout是所有AWT布局管理方式中最繁的,同时也是功能最强的。GridBagLayout设置的所有行和列可以大小不同。GridBagLayout允许不同组件在容器中占据不同大小的矩形区域。GridBagLayout由一个专用的类来对布局行为进行约束,该类为GridBagConstraints,它的所有成员都是public(公有)的,要掌

6、握如何使用GridBagLayout布局,关键在于熟悉这些约束变量,以及如何进行设置。GridBagConstraints的常用属性publicgirdx//组件所处位置的起始单元格列号publicgridy//组件所处位置的起始单元格行号publicgridheight//组件在垂直方向占据的单元格个数publicgridwidth//组件在水平方向占据的单元格个数publicdoubleweightx//容器缩放时,单元格在水平方向的缩放比例publicdoubleweighty//容器缩放时,单元格在垂直方向的缩放比例publicintanchor//当组件较小时指定

7、其在网格中的起始位置publicintfill//当组件分布区域变大时指明是否缩放,以及如何缩放publicInsetsinsets//组件与外部分布区域边缘的间距publicintipadx//组件在水平方向的内部缩进publicintipady//组件在垂直方向的内部缩进示例9-5源程序示例9-6源程序CardLayoutCardLayout布局将组件(通常是Panel类的容器组件)象扑克牌(卡片)一样摞起来,每次只能显示其中的一张,实现分页的效果,每一页中可以有各自的界面,这样就相当于扩展了原本有限的屏幕区域

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。