欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载  

    第6章Java图形界面.ppt

    • 资源ID:2596851       资源大小:228.01KB        全文页数:51页
    • 资源格式: PPT        下载积分:8
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要8
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第6章Java图形界面.ppt

    第6章 Java图形界面,学习导读,首先,我们学习一些基本的图形编程知识,包括窗口的显示及外观设置、在窗口中显示文字和图像等; 然后,系统地介绍图形用户界面中常用组件的用法,如布局管理器、文本框、复选框、菜单、对话框等。,教学安排,AWT简介 AWT基本组件 窗口及菜单设计 布局管理器 Java图形设计 Java2D,6.1 AWT简介,Java1.0的出现带来了抽象窗口工具箱(AWT)。设计目标是希望构建一个通用的GUI,使得利用它编写的程序能够运行在所有的平台上,以实现Sun公司提出的口号“一次编写,随处运行”。 在Java1.2中,Sun公司推出了新的用户界面库:Swing。相对AWT来说,Swing功能更强大、使用更方便,它的出现使得Java的图形用户界面上了一个台阶。 但是,Swing并没有代替AWT。在Java1.1中,AWT事件处理模型有了根本改变。Swing使用的仍然是Java1.1的事件处理模型。(在本书第14章将介绍Java Swing编程),6.1 AWT简介,1、AWT的功能 1)丰富的图形界面组件。 2)强大的事件处理模型图形和图像工具,包括形状、颜色和字体。 3)布局管理器,可以进行灵活的窗口布局,设计特定窗口的尺寸和屏幕分辨率。 4)无关数据传送类,可以通过本地平台的剪贴板来进行剪切和粘贴操作。 5)打印和无鼠标操作。 见书p94表61,6.1 AWT简介,2、AWT的分类 (1)基本组件 基本组件是图形界面的最小单位,里面不再包含其他的成分,如:按钮、Button 复选框Checkbox 、组合框Choice 、列表List、文本域 Textfield、多行文本域Textarea、静态文本Label以及滚动条Scrollbar等。 (2)包容器(Container) 包容器是一种特殊的组件,用来包含其他组件,如:面板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):创建一个带初始字符串及指定对齐方式的标签。其中对齐方式有几种形式: Label.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基本组件,方法: 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.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 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不能自动实现菜单容器类。 Dialog依赖于其他的窗口,当其所依赖的窗口最小化时,对话框也随之消失;当其所依赖的窗口恢复原样时,对话框也自动恢复。 Dialog有模式(model)和非模式(modeless)两种,模式对话框只让应用程序响应对话框内的事件,而其他窗体中的事件则不能响应;非模式对话框则可以响应其他窗体中的事件。见例6。15,6.3 窗口和菜单设计,3、文件对话框(FileDialog) 主要用于打开和保存文件时让用户选择文件名。通常,文件对话框是由操作系统提供的标准对话框。 见例6。16 4、菜单组件,6.4 布局管理器,容器组件中可以放置多个组件,使用布局管理器可以确定这些组件的位置和大小 每一个容器组件都有一个默认的布局管理器,也可以通过setLayout方法来设置其他布局管理器 布局管理器:FlowLayout、BorderLayout、GridLayout、GridBagLayout、CardLayout、null,6.4 布局管理器,1、FlowLayout布局管理器 FlowLayout布局管理是一种最简单的布局管理方法,是Panel的默认布局 它以流式的方式,即组件按每行先后自左向右放置,一行放不下时再换行 FlowLayout的默认对齐方式为居中对齐,6.4 布局管理器,构造函数: FlowLayout():创建默认的FlowLayout布局管理器。 FlowLayout(int):以指定的对齐方式创建FlowLayout布局管理器。其中的参数有FlowLayout.LEFT(左对齐)、FlowLayout.RIGHT(右对齐)、FlowLayout.CENTER(居中对齐)。 FlowLayout(int,int,int):以指定的对齐方式及间距创建FlowLayout布局管理器。其中第一个参数为对齐方式,第二个参数为组件间间距,第三个参数为列间距。 见例6。18,6.4 布局管理器,2、 BorderLayout布局管理器 BorderLayout是Frame和Dialog的默认布局 它将整个容器的区域分为东、西、南、北、中五个部分加入组件时,需指明放置的位置,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,int,int,int):按指定行数、列数、行间距和列间距创建GridLayout布局。 见例6。20,6.4 布局管理器,4、GridBagLayout布局管理器 GridBagLayout布局将显示区域分成很多矩形小单元,每个组件可以占用一个或多个单元,从而可以指定每个组件所占空间的大小。,6.4 布局管理器,5、CardLayout CardLayout将容器中的组件(通常是面板)像扑克牌一样排列,每次只能显示最上面的一张。 构造函数 CardLayout():创建默认的CardLayout布局管理器。 CardLayout(int,int):以指定的行间距和列间距创建CardLayout布局管理器。见例6。22,6.4 布局管理器,主要方法: void first() 显示第一个加入到CardLayout的组件 void last()显示最后一个加入到CardLayout的组件 void next()显示当前组件的下一个组件,如当前是最后一个,则下一个为第一个 void previous()显示当前组件的前一个组件,如当前是第一个,则下一个为最后一个,6.4 布局管理器,6、null null布局管理器将主动权交给用户,由用户使用坐标系统来放置每个组件,即调用组件的setBounds()方法来设置其放置位置和大小。,6.5 Java图形设计,Java语言的类库中提供了丰富的绘图方法,其中大部分对图形、文本、图像的操作方法都定义在Graphics类中 在头部先写上:import java.awt. Graphics。 paint( )方法中有一个Graphics对象参数,因此,我们只要在这个对象上进行图形、文本及图像的绘制操作,就可以在屏幕上看到所显示的结果。,6.5 Java图形设计,1、图形坐标 Java图形系统采用的二维 Java的坐标原点(0,0)在屏幕的左上角,水平向右为X轴的正方向,竖直向下为Y轴的正方向 每个坐标点的值表示屏幕上的一个像素点的位置,因此,所有坐标点的值都取整数。,6.5 Java图形设计,2、颜色Color 构造函数: Color(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(普通体)。也可以进行相加来生成复合字体风格,例如想让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( )方法,它们的调用格式如下: drawRect(int x, int y, int width, int height) /边框型风格 fillRect(int x, int y, int width, int height) /填充型风格 其中头两个参数分别表示矩形左上角的x坐标和y坐标,后两个参数分别表示矩形的宽度和高度。,6.5 Java图形设计,(2)立体矩形 立体矩形也可以说是三维矩形。其实仅仅是在矩形的边框上增加一点阴影,使矩形看上去相对表平面好像有凸出或凹下的效果,其调用方法的格式如下: draw3DRect(int x, int y, int width, int height, boolean raised) fill3DRect(int x, int y, int width, int height, boolean raised) 这两个方法中的前四个参数与drawRect( )方法中所用的参数含义是一样的,第五个参数raised便是定义该立体矩形是具有凸出(值为true)还是凹下(值为false)的效果。,6.5 Java图形设计,(3)圆角矩形 也就是矩形的四个顶角呈圆弧状,每个圆弧其实是由四分之一的椭圆弧所构成。画圆角矩形的两个方法的调用格式如下: drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) 我们可以看出,它们除了具有和普通矩形含义相同的前四个参数外,还多了两个用来描述圆角性质的参数。其中arcWidth代表了圆角弧的横向直径;arcHeight代表了圆角弧的纵向直径。,6.5 Java图形设计,3椭圆的绘制 在Java中绘制椭圆的方法是给出该椭圆的外接矩形作为参数,其调用格式与画普通矩形的方法相似: drawOval(int x, int y, int width, int height) /边框型风格 fillOval(int x, int y, int width, int height) /填充型风格 这里x和y不是椭圆的圆心坐标,而是该椭圆外接矩形的左上角。,6.5 Java图形设计,4画弧 弧是椭圆的一部分,因而画弧的方法就相当于先画一个椭圆,而后取该椭圆中所需要的一部分。它们的调用格式如下: drawArc(int x, int y, int width, int height,int startAngle, int arcAngle) /边框型风格 fillArc(int x, int y, int width, int height,int startAngle, int arcAngle) /填充型风格 其中前四个参数的含义与画椭圆一样,因此也必须用矩形的观点来确定弧在坐标系统中的位置。后两个参数就是用来定义椭圆的一部分:startAngle参数表示该弧从什么角度开始,arcAngle参数表示从startAngle开始转了多少度。,6.5 Java图形设计,见例6。26,6.5 Java图形设计,多边形的绘制 void drawPolygon(Polygon p) 参数是多边形对象Polygon ,先定义Polygon对象,然后将点加入到该对象中,然后利用drawPolygon进行多边形的绘制: Polygon p = new Polygon; p.addPoint(x1, y1); p.addPoint(x2, y2); . g.drawPolygon(p); 见例6。27 2,6.5 Java图形设计,复制与清除图形 copyArea(int x, int y, int width, int height, int dx, int dy) g.clearRect(0, 0, size( ).width, size( ).height);,6.6 Java2D,早期版本的 AWT 提供了简单的绘制包,对于复杂的图形、文本或图像,其功能却不够全面。Java 2D增强了抽象窗口工具包 (AWT) 的图形、文本和图像功能,可以开发更为强大的用户接口和新型的 Java 应用程序,6.6 Java2D,Java 2D API 类分为以下几个包: 1)java.awt:java.awt包含了一些新增的2D API 类别和接口。 2)java.awt.geom:包含可以勾勒任何形状的 GeneralPath类别。 3)java.awt.font:包含用于文本布局和字体定义的类和接口。 4)java.awt.color:包含用于颜色空间定义和颜色监视的类和接口。 5)java.awt.image和 java.awt.image.renderable:包含用于图像定义和绘制的类和接口。 6)java.awt.print:包含用于打印所有基于 Java 2D 的文本、图形和图像的类和接口。,本章小结,本章主要讲述Java的图形界面技术 AWT组件,在学习多个AWT组件时,主要掌握每种组件的成员变量、构造方法、主要方法及用处。 窗口及菜单设计,主要掌握框架Frame、对话框Dialog、文件对话框FileDialog的使用及如何创建标准菜单系统。 布局管理器,即学习如何利用流式布局、边界式布局、网格布局、卡片式布局及null布局等来安排界面上的多个组件。 Java图形设计,主要掌握颜色、字体的设置及各种几何图形的绘制。,

    注意事项

    本文(第6章Java图形界面.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开