欢迎来到天天文库
浏览记录
ID:40238770
大小:997.00 KB
页数:50页
时间:2019-07-28
《Java程序设计案例教程 2 第6章 图形用户界面设计基础》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章图形用户界面设计基础6.1【案例17】创建窗体6.2【案例18】记录员工个人信息6.3【案例19】会移动的笑脸6.4【案例20】名曲欣赏6.1【案例17】创建窗体1.图形用户界面和标准组件(1)图形用户界面简介:图形用户界面(GraphicsUserInterface,GUI)。它使用图形的方式,借助菜单、文本框、按钮等标准界面组件和鼠标及键盘的操作,帮助用户方便地向计算机系统发出指令,并将系统运行的结果同样以图形方式显示给用户。在图形用户界面(GUI)出现之前,用户需要输入命令,然后计算机再进行计算并输
2、出结果。这种人机交流方式需要用户记忆大量的命令,并且操作烦琐、复杂、容易出错。对于计算机的初学者和一般用户来说,要掌握一种系统或者应用软件更是困难重重。例如,DOS操作系统虽然具有与Windows同样强大的文件管理功能,但是其普及程度远远不及后者,在很大程度上是因为DOS不具有图形用户界面。由此可见,一个友好的图形用户界面对于一个软件的重要性。图形用户界面是指包括文本框、标签、按钮、单选按钮、复选框、图片、菜单、对话框等组件的一个人机交互的界面。在该界面中,用户不需要记忆任何命令,通过单击、双击、拖动鼠标和简单
3、的文字输入就可以轻松地操作计算机完成所有的任务。在Java语言中,可以自行设计程序的图形用户界面,使得程序运行效果更加直观、生动活泼。设计和实现图形用户界面的工作主要有以下3个方面。创建组件(Component):创建组成图形用户界面的各种元素。例如,文本框、标签、按钮、单选按钮、复选框、图片、菜单、对话框等。指定布局(Layout):设置各个组件在图形用户界面中的相应位置。响应事件(Event):定义当用户进行某些操作时,程序的执行情况,从而实现图形用户界面的人机交互功能。例如,当单击按钮、拖动鼠标或者在文本
4、框中输入文字时,程序的反应。程序的反应结果一般也是通过图形用户界面显示出来。Java1.0中出现了用来生成图形用户界面的包是java.awt,简称抽象窗口工具集,即AWT(AbstractWindowToolkit)。它的设计目标是希望构建一个通用的GUI,使得利用它编写的程序能够运行在所有的平台上。(2)GUI标准组件:Java中构成图形用户界面的各种元素和成分可以分为两大类:容器和组件。容器(Container):容器是用来摆放图形用户界面中各种组件的一个矩形范围。一般说来,一个应用程序的图形用户界面必须有
5、一个顶层容器,比如一个窗口。在容器中,可以放置各种组件或者其他容器,在新放置的容器内又可以放置各种组件或者其他容器,依此类推就构成一个复杂的图形界面系统。运行程序时,容器的显示位置和大小也就是该程序图形用户界面的显示位置和大小。用户可以自行设置位置和大小的绝对值,也可以依据其所含组件和其他容器的位置及大小来设置相对位置。容器通常都有一个背景,这个背景覆盖填充整个容器,可以是透明的,也可以使用指定的图案增加图形用户界面的生动性和个性化。组件(Compnent):组件是图形用户界面的基本组成单位,它不能包含任何其他
6、的组件或者容器。组件的主要作用是接受用户的指令,显示输出结果,从而完成人机交流。组件的种类很多,例如,按钮、复选框、下拉菜单等。每一种组件都有其特定的属性,以及相对应的事件响应方式。在容器中的组件可以按一定的规则来放置,确定它们的相对位置关系和前后排列关系等。除了容器和组件这两大图形用户界面组成部分外,还有一些标志图案或者几何图形,这些主要是用来突出输出结果和美化组件的。它们不被系统识别,所以不能响应用户的操作,不具有交互功能。2.AWT和Swing在Java语言中,图形用户界面是通过java.awt包或者ja
7、vax.swing包中的类来实现的。java.awt包一般简称为AWT,其含义是抽象窗口工具箱(AbstractWindowsToolkit);javax.swing包一般简称为Swing,它是Java基础类库(JavaFundationClass,JFC)中的一员。(1)AWT提供了多种标准的GUI组件,比如标签、文本框、按钮等,以及窗口、面板等容器。使用AWT的布局管理器,可以安排各个组件在容器中的位置。此外,还有前面介绍的绘制几何图形、设置文字字体、颜色等功能。在AWT中,专门有一组类用于响应并处理外部事
8、件。JavaApplet程序就是属于AWT中的一种图形用户界面实现方法。实际上,AWT提供给编程人员的只是抽象的窗体界面系统,而在其内部会针对每种操作系统,分别使用不同的方式来实现图形用户界面。使用这种方式虽然加快了GUI的实现速度,但是因为每种操作系统的组件大小、文字字体和界面布局都不同,所以会造成同一个程序在不同系统中的图形用户界面效果不同。例如,在Mac机上设计的一个友好的程序图
此文档下载收益归作者所有