第6章Java图形界面知识讲解

上传人:yulij****0329 文档编号:138582033 上传时间:2020-07-16 格式:PPT 页数:51 大小:363KB
返回 下载 相关 举报
第6章Java图形界面知识讲解_第1页
第1页 / 共51页
第6章Java图形界面知识讲解_第2页
第2页 / 共51页
第6章Java图形界面知识讲解_第3页
第3页 / 共51页
第6章Java图形界面知识讲解_第4页
第4页 / 共51页
第6章Java图形界面知识讲解_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《第6章Java图形界面知识讲解》由会员分享,可在线阅读,更多相关《第6章Java图形界面知识讲解(51页珍藏版)》请在金锄头文库上搜索。

1、第6章 Java图形界面,学习导读,首先,我们学习一些基本的图形编程知识,包括窗口的显示及外观设置、在窗口中显示文字和图像等; 然后,系统地介绍图形用户界面中常用组件的用法,如布局管理器、文本框、复选框、菜单、对话框等。,教学安排,AWT简介 AWT基本组件 窗口及菜单设计 布局管理器 Java图形设计 Java2D,6.1 AWT简介,Java1.0的出现带来了抽象窗口工具箱(AWT)。设计目标是希望构建一个通用的GUI,使得利用它编写的程序能够运行在所有的平台上,以实现Sun公司提出的口号“一次编写,随处运行”。 在Java1.2中,Sun公司推出了新的用户界面库:Swing。相对AWT来

2、说,Swing功能更强大、使用更方便,它的出现使得Java的图形用户界面上了一个台阶。 但是,Swing并没有代替AWT。在Java1.1中,AWT事件处理模型有了根本改变。Swing使用的仍然是Java1.1的事件处理模型。(在本书第14章将介绍Java Swing编程),6.1 AWT简介,2、AWT的分类 (1)基本组件 基本组件是图形界面的最小单位,里面不再包含其他的成分,如:按钮、Button 复选框Checkbox 、组合框Choice 、列表List、文本域 Textfield、多行文本域Textarea、静态文本Label以及滚动条Scrollbar等。 (2)包容器(Cont

3、ainer) 包容器是一种特殊的组件,用来包含其他组件,如:面板Panel、窗口 Windows 、对话框Dialog、文件对话框 Filedialog和框架Frame等,6.1 AWT简介,3、AWT的类层次,6.1 AWT简介,4、简单实例 (1)用于Java Application 见例6。1 (2)用于Java AWT 见例6。2,6.2 AWT基本组件,1、Label(标签) 构造函数: Label():创建空的标签。 Label(String):创建一个带初始字符串的标签。 Label(String,int):创建一个带初始字符串及指定对齐方式的标签。其中对齐方式有几种形式: La

4、bel.LEFT(左对齐)、 Label.RIGHT(右对齐)、 Labe .CENTER(居中对齐),6.2 AWT基本组件,方法: void setText(String) 设置显示内容 String getText() 获取显示内容 见书例6。3,6.2 AWT基本组件,2、文本域(Textfield) 构造函数: TextField():创建空的文本域; TextField(int):创建具有指定长度的文本域。 TextField(String):创建带有初始文本内容的文本域。 TextField(String, int):带有初始文本内容并具有指定长度的文本域。,6.2 AWT基本组

5、件,方法: void setText(String) 设置文本域中的文本值 String getText() 返回文本域中的输入文本值 见例6。4,6.2 AWT基本组件,3、按钮(Button) Button():建立一个没有标示字符串的新按钮类对象。 Button (String Label):建立一个标示字符串为Label的新按钮类对象。 见例65,6.2 AWT基本组件,4、复选框组件(Checkbox) 5、单选钮组件 (CheckboxGroup) 当Checkbox利用CheckboxGroup类分组时,就是当选框 见例6。6 6、滚动条组件(Scrolbar) 见例6。7,6.

6、2 AWT基本组件,7、多行文本组件TextArea 见例6。8 8、下拉列表组件(Choice) 见例6。9 9、列表组件(List) 见例6。10,6.2 AWT基本组件,10、画布组件(Canvas) Canvas是图形操作的容器,但它不能包含其他GUI组件,它只能为图形操作提供容器平台,进而在其上自由地进行图形操作。 构造函数 Canvas (),6.2 AWT基本组件,方法: Void paint(Graphics) 在画布上绘图 见例6。11,6.2 AWT基本组件,11、面板组件(Panel) Panel是最简单的容器组件,本身是一个矩形区域,可以在其中放入各种组件见例6。12

7、12、Applet,6.3 窗口和菜单设计,1、框架窗口组件(Frame) Frame是可独立运行的主窗口,用于进行开发桌面应用程序。,6.3 窗口和菜单设计,主要方法: void setIconImage(Image)设置窗口的图标 void setMenuBar(MenuBar)设置窗口的菜单栏 void setTitle(String)设置窗口的标题 void setResizable(boolean)设置窗口的可缩放标志 见例6。14,6.3 窗口和菜单设计,2、对话框(Dialog) 对话框与Frame一样,也是一个容器组件,可以在上面放置各类组件 Dialog不能自动实现菜单容器类

8、。 Dialog依赖于其他的窗口,当其所依赖的窗口最小化时,对话框也随之消失;当其所依赖的窗口恢复原样时,对话框也自动恢复。 Dialog有模式(model)和非模式(modeless)两种,模式对话框只让应用程序响应对话框内的事件,而其他窗体中的事件则不能响应;非模式对话框则可以响应其他窗体中的事件。见例6。15,6.3 窗口和菜单设计,3、文件对话框(FileDialog) 主要用于打开和保存文件时让用户选择文件名。通常,文件对话框是由操作系统提供的标准对话框。 见例6。16 4、菜单组件,6.4 布局管理器,容器组件中可以放置多个组件,使用布局管理器可以确定这些组件的位置和大小 每一个容

9、器组件都有一个默认的布局管理器,也可以通过setLayout方法来设置其他布局管理器 布局管理器:FlowLayout、BorderLayout、GridLayout、GridBagLayout、CardLayout、null,6.4 布局管理器,1、FlowLayout布局管理器 FlowLayout布局管理是一种最简单的布局管理方法,是Panel的默认布局 它以流式的方式,即组件按每行先后自左向右放置,一行放不下时再换行 FlowLayout的默认对齐方式为居中对齐,6.4 布局管理器,构造函数: FlowLayout():创建默认的FlowLayout布局管理器。 FlowLayout(

10、int):以指定的对齐方式创建FlowLayout布局管理器。其中的参数有FlowLayout.LEFT(左对齐)、FlowLayout.RIGHT(右对齐)、FlowLayout.CENTER(居中对齐)。 FlowLayout(int,int,int):以指定的对齐方式及间距创建FlowLayout布局管理器。其中第一个参数为对齐方式,第二个参数为组件间间距,第三个参数为列间距。 见例6。18,6.4 布局管理器,2、 BorderLayout布局管理器 BorderLayout是Frame和Dialog的默认布局 它将整个容器的区域分为东、西、南、北、中五个部分加入组件时,需指明放置的位

11、置,6.4 布局管理器,构造函数 BorderLayout():创建默认的BorderLayout。 BorderLayout(int,int):以指定的行间距和列间距创建BorderLayout。 见例6。19,6.4 布局管理器,3、GridLayout GridLayout布局将容器区域划分成m行*n列,大小相等的格子,而容器中的组件就放入这些格子中,占用大小完全相同的一格。 构造函数: GridLayout():创建默认的GridLayout布局,所有组件在一行中显示。 GridLayout(int,int):按指定行数和列数创建GridLayout布局。 GridLayout(int

12、,int,int,int):按指定行数、列数、行间距和列间距创建GridLayout布局。 见例6。20,6.4 布局管理器,4、GridBagLayout布局管理器 GridBagLayout布局将显示区域分成很多矩形小单元,每个组件可以占用一个或多个单元,从而可以指定每个组件所占空间的大小。,6.4 布局管理器,5、CardLayout CardLayout将容器中的组件(通常是面板)像扑克牌一样排列,每次只能显示最上面的一张。 构造函数 CardLayout():创建默认的CardLayout布局管理器。 CardLayout(int,int):以指定的行间距和列间距创建CardLayo

13、ut布局管理器。见例6。22,6.4 布局管理器,主要方法: void first() 显示第一个加入到CardLayout的组件 void last()显示最后一个加入到CardLayout的组件 void next()显示当前组件的下一个组件,如当前是最后一个,则下一个为第一个 void previous()显示当前组件的前一个组件,如当前是第一个,则下一个为最后一个,6.4 布局管理器,6、null null布局管理器将主动权交给用户,由用户使用坐标系统来放置每个组件,即调用组件的setBounds()方法来设置其放置位置和大小。,6.5 Java图形设计,Java语言的类库中提供了丰富

14、的绘图方法,其中大部分对图形、文本、图像的操作方法都定义在Graphics类中 在头部先写上:import java.awt. Graphics。 paint( )方法中有一个Graphics对象参数,因此,我们只要在这个对象上进行图形、文本及图像的绘制操作,就可以在屏幕上看到所显示的结果。,6.5 Java图形设计,1、图形坐标 Java图形系统采用的二维 Java的坐标原点(0,0)在屏幕的左上角,水平向右为X轴的正方向,竖直向下为Y轴的正方向 每个坐标点的值表示屏幕上的一个像素点的位置,因此,所有坐标点的值都取整数。,6.5 Java图形设计,2、颜色Color 构造函数: Color(

15、int r, int g, int b): 其中每个参数的值都在0到255之间,数值越大就表明这种颜色的成份越重。例如(0,0,0)代表黑色,(255,0,0)代表红色。 主要方法: setColor(Color c)调用Graphics类中的setColor( )方法设置系统当前所用颜色 见例6。24,6.5 Java图形设计,3、文本与字体Font 创建: Font(String name, int style, int size):创建指定三个参数字体名、字体风格和尺寸大小的字体。 其中字体风格有如下三种:Font.BOLD(粗体)、Font.ITALIC(斜体)、Font.PLAIN(

16、普通体)。也可以进行相加来生成复合字体风格,例如想让style既是粗体又是斜体: Font fn = new Font(TimesRoman, Font.BOLD+Font.ITALIC, 28),6.5 Java图形设计,方法: setFont(Font f) 见例6。25,6.5 Java图形设计,4、Java中图形的绘制,6.5 Java图形设计,1、画线 在Java的Graphics类中提供画线功能的是drawLine( )方法,其调用格式如下: drawLine(int x1,int y1,int x2,int y2) 该方法需要设置四个参数,其中x1,y1表示线段的一个坐标点,x2,y2表示线段的另一个坐标点。,6.5 Java图形设计,2矩形的绘制 Graphics类中提供了三种类型的矩形,它们分别是普通矩形、圆角矩形和立体矩形。而每一种矩形都提供两种不同风格的方法,一种是仅画出矩形的边框;另一种是不仅画出边框,并且还用相同的颜色将整个矩形区域填满。,6.5 Java图形设计,(1)普通矩形 画普通矩形需调用drawRect( )或fillRect( )方法,它们的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号