Java高级程序04章 awt.ppt

大学JAVA高级程序设计-王路群-课件PPT

收藏

资源目录
跳过导航链接。
大学JAVA高级程序设计-王路群-课件PPT.zip
JAVA高级程序设计-王路群-PPT演示文稿
教案资料.ppt---(点击预览)
JAVA高级程序设计-王路群-PPT课件文件
文稿ppt_ppt.txt---(点击预览)
文稿ppt_ppt.jpg---(点击预览)
文稿ppt.ppt---(点击预览)
JAVA高级程序设计-王路群-大学教学资料
(课件资料)《JAVA高级程序设计》-王路群-电子教案
压缩包内文档预览:(预览前20页/共53页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:21836114    类型:共享资源    大小:13.21MB    格式:ZIP    上传时间:2019-09-06 上传人:QQ24****1780 IP属地:浙江
25
积分
关 键 词:
大学 java 高级 高档 程序设计 王路群 课件 ppt
资源描述:
大学JAVA高级程序设计-王路群-课件PPT,大学,java,高级,高档,程序设计,王路群,课件,ppt
内容简介:
Java高级程序设计,第一部分 第一章 Java入门基础 第二章 异常 第三章 Java Applet类型 第四章 图形用户界面GUI(一)AWT 第五章 Java中的事件处理机制 第六章 图形用户界面GUI(二)Swing,第七章 多线程 第八章 I/O输入输出流 第九章 Java数据库连接(JDBC) 第十章 Java网络编程 第二部分 第一章 Java API 第二章 Java与多媒体 第三章 Java Bean基础,第四章 图形用户界面GUI(一)AWT,4.1 AWT工具集简介 4.2 AWT事件模型 4.3 GUI组件上的图形操作 4.4 常用的AWT组件,4.1 AWT工具集简介,GUI 即图形用户界面(Graphics User Interface),它是用户与程序之间的一个接口,程序通过GUI为用户提供方便操作的图形化的界面,通常包括窗口、菜单、按钮、选择按钮、文本框、工具栏等元素。 AWT 即抽象窗口工具包(Abstract Window Toolkit),是Java API为Java程序提供的建立图形用户界面的基本工具集,AWT可用于Java Application和Java Applet的图形用户界面的创建。,4.1 AWT工具集简介 -组件与容器,组件(Component) 各种各样的类,它们封装了图形系统的许多最小单位,例如按钮、菜单、文本框等。 容器(Container) 也是组件,它最主要的作用是装载其它组件,以实现图形界面上的布局,如窗口(Frame)、面板(Panel)等。 类似面板这样的容器也常被当作组件添加到其它容器中,以便完成复杂的界面设计。,4.1 AWT工具集简介 -AWT类层次结构图,AWT类层次结构图如下:,4.2 AWT事件模型,事件处理简介 Java GUI程序是事件驱动的,要让图形界面响应用户的操作,就必须给各组件加上相应的事件处理代码。 在事件处理过程中,主要包括3个部分: Event :事件,用户对界面组件的操作在Java语言上的描述,以类的形式出现,如键盘操作事件的类是KeyEvent。 Event Source :事件源,事件发生的场所,通常就是各个组件,例如按钮Button。 Event Handling :事件处理,接收事件对象并对其进行处理,由事件监听器(Event Listener)实现。,4.2 AWT事件模型 -授权事件模型,授权事件模型简介 Java采用授权事件模型(Delegation Event Mode)的事件处理机制,也称为委托事件模型。 当用户与GUI的组件交互,触发了相应的事件时,组件本身并不直接处理事件,而是将事件的处理工作委托给事件监听器。 java. awt. event包包含了Java AWT的事件类和事件监听器类,见教材表4-1,4.3 GUI组件上的图形操作,GUI组件上的图形操作: GUI组件上的图形操作主要包括:绘制二维图形、控制颜色和字体等等。 java. awt 包中提供了许多图形操作的类: Graphics类:提供了许多处理图形的方法,如绘制线条、各种矩形、各种椭圆、弧线和多边形等。 Color类:包含了操作颜色的方法和常量。 Font类:包含了操作字体的方法和常量。,4.3 GUI组件上的图形操作 -组件重绘,组件重绘 AWT线程在重新绘制组件(如最小化后恢复)时,会自动调用组件的paint( )方法(在Component类中定义),paint( )方法定义的如下:public void paint(Graphics g) 因此,组件重绘的代码应该在paint( )方法中编写。由于不能直接进入到某个组件的paint( )方法中修改其代码,所以,常用的处理方式是:定义一个继承需重绘组件的子类,在子类中重写paint( )方法,在这个新的paint( )方法中编写重绘代码。,4.3 GUI组件上的图形操作 -绘制基本图形,Graphics类提供了许多绘制基本图形的方法: 绘制直线 绘制矩形 绘制椭圆 绘制弧线 绘制多边形 绘制文本,绘制直线,绘制直线方法: void drawLine(int x1, int y1, int x2, int y2) 描述: 在点(x1,y1)和点(x2,y2)之间绘制一条直线,返 回,绘制矩形,绘制矩形的常用方法如下: void drawRect(int x, int y, int width, int height) 绘制矩形,点(x,y)为左上角坐标,宽度、高度分别为width和height void drawRect(int x, int y, int width, int height, int arcWidth, int arcHeight) 绘制圆角矩形,点(x,y)为外接矩形左上角坐标,arcWidth和arcHeight分别为弧度和弧高 void fillRect(int x, int y, int width,int height) 绘制填充矩形 void fillRoundRect(int x, int y, int width,int height, int arcWidth, int arcHeight) 绘制填充圆角矩形,返 回,绘制椭圆,绘制椭圆的常用方法如下: void drawOval(int x, int y, int width, int height) 绘制椭圆,点(x,y)是外切矩形左上角坐标 void fillOval(int x, int y, int width, int height) 绘制填充椭圆,返 回,绘制弧线,绘制弧线的常用方法如下: void drawArc(int x, int y, int width, int height, int startAngle,int arcAngle) 绘制弧线,前4个参数含义同椭圆,startAngle为起始弧度值,逆时针绘制弧线(3点钟方位为0度),arcAngle为弧角度 void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle) 绘制填充弧线,返 回,绘制多边形,绘制多边形的常用方法如下: void drawPolygon(int xPoints, int yPoints, int nPoints) 制多边形,数组xPoints和yPoints表多边形顶点坐标,nPoints表顶点数目 void fillPolygon(int xPoints, int yPoints, int nPoints) 绘制填充多边形,返 回,绘制文本,绘制文本(字符串)方法: void drawString(String str, int x, int y) 描述: 从点(x,y)处开始从左至右绘制字符串str,返 回,4.3 GUI组件上的图形操作 -建立字体,建立字体 字体类Font的常用构造方法: public Font(String name, int style, int size) name用于指定字体名 style指定字体样式(Font.BOLD、Font.ITALC、Font.PLAIN) size用于指定字体大小 setFont()方法用于设定文本当前使用的字体: void setFont(Font font),4.4 常用的AWT组件,常用的AWT组件: Frame类 文本框和文本区 按钮和标签 面板和画布 布局设计 选择型组件 Component类的常用方法 Dialog类,4.4 常用的AWT组件 -Frame类,Frame类 是一个容器类,其对象就是一个Java应用程序窗口,其它各种组件可以添加到Frame中 构造方法: public Frame( ) public Frame(String title),Frame类,Frame类常用方法: public void setVisible(boolean b) public void setSize(int width, int height) public String setTitle(String title) public void setBounds(int x, int y, int width, int height) public void setResizable(boolean b) public void dispose( ),返 回,4.4 常用的AWT组件 -文本框和文本区,1、文本框(TextField) 单行文本框,可以向其中输入一行字符串或对其内容进行修改 构造方法: public TextField(String text) public TextField(int columns) public TextField(String text, int columns),TextField,TextField类常用方法: public void setText(String text) public String getText( ) public void setEchoChar(char c),TextArea,2、文本区(TextArea) 多行文本框,或称文本区,同样用于显示文本字符串,用户也可以对其中的字符串进行编辑 构造方法: public TextArea(String text) public TextArea(int rows, int columns) public TextArea(String text, int cows, int columns) public TextArea(String text, int cows, int columns , int scrollbars),TextArea,TextArea类常用方法: setText(String)、getText( ) 与TextField对应方法功能相同 public void append(String str) public void insert (String str, int position),返 回,4.4 常用的AWT组件 -按钮和标签,1、按钮(Button) 用来响应用户的点击动作 构造方法: public Button( ) public Button(String label),Button,Button类常用方法: public String getLabel( ) public void setLabel(String label) public String getActionCommand( ) public void setActionCommand (String command) public void addActionListener (ActionListener listener),Label,2、标签(Label) 提供了显示某段文本的功能,但用户无法修改Label显示的文本内容 构造方法: public Label(String text) public Label(String text, int alignment) 常用方法: public String getText( ) public void setText(String text),返 回,4.4 常用的AWT组件 -面板和画布,1、面板(Panel) 可作为容器容纳其它组件,但是不能独立存在。通常,可在Panel中添加若干组件后,再放到另一个容器里,叫做容器的嵌套,可实现较复杂的界面布局。 构造方法: public Panel( ) public Panel(LayoutManager layout) 可使用add方法向Panel中添加组件: Panel对象.add(组件),ScrollPane,带滚动条的面板 ScrollPane 构造方法: public ScrollPane( ) public ScrollPane(int scrollbarDisplayPolicy) 参数scrollbarDisplayPolicy取值如下: ScrollPane. SCROLLBARS_ALWAYS ScrollPane. SCROLLBARS_AS_NEEDED ScrollPane. SCROLLBARS_NEVER,画布,2、画布(Canvas) 表示屏幕上的一块空白矩形区,它不是容器,而是一个可以在其上进行绘制图形或图片 创建自己的画布对象的常用方法是继承Canvas类,并覆盖Canvas类的paint( )方法来绘制该画布的外观。需要注意的是,要在创建画布类的构造方法中给定画布的尺寸。,返 回,4.4 常用的AWT组件 -布局设计,布局设计 进行图形界面设计,不仅仅只是将组件加到容器中而已,为使界面合理、美观,我们还应该控制组件在容器中的位置,即进行布局设计。 布局管理器(Layout Manage)为容器内组件的排列提供了布局策略,每个容器都拥有布局管理器,用于负责容器内组件的排列。,AWT布局管理器类,java. awt类库中共定义了5种布局管理器类,分别是: BorderLayout、FlowLayout、GridLayout、GridBagLayout 和 CardLayout 各种容器类组件都可以使用方法: setLayout(布局管理器对象) 来设定自己的布局方式,BorderLayout,1、 BorderLayout 将容器空间分为NORTH、SOUTH、WEST、EAST、CENTER5个区域,每个组件将占据某个区域 构造方法: public BorderLayout( ) public BorderLayout(int hgap, int vgap),FlowLayout,2、 FlowLayout 使用这种布局策略的容器将其中的组件按加入的先后顺序从左到右排列,一行排满就转到下一行继续从左往右排列,每行的组件默认都是按居中对齐排列的。 Panel的默认布局管理器是FlowLayout 构造方法: public FlowLayout( ) public FlowLayout(int align) public FlowLayout(int align, int hgap, int vgap),GridLayout,3、 GridLayout 像棋盘一样将容器空间划分成若干行列的网格区域,各个组件将被置于这些划分出来的网格中。 构造方法: public GridLayout( ) public GridLayout(int rows, int cols) public GridLayout(int rows, int cols, int hgap, int vgap),CardLayout,4、 CardLayout CardLayout的功能就好比多张卡片叠在一起,可以抽取其中任意一张来看,但每次只能看到其中的一张卡片。 构造方法: public CardLayout( ) public GardLayout(int hgap, int vgap),null布局,5、null布局 若不希望使用某种布局策略,而想精确地指定每个组件的位置和大小,我们可以使用容器的setLayout( )方法,将参数设为null,即为null布局。 null布局下要为各个组件设置位置和大小,可使用方法: public void setBounds(int x, int y, int width, int height),返 回,4.4 常用的AWT组件 -选择型组件,1、复选框(Checkbox) 提供从“选中”和“未选中”两种状态选其一的功能。当用户点击复选框时,若原状态是true(已选中状态),则变为false(未选中状态);若原状态状态是flase,则点击后状态变为true。 构造方法: public Checkbox(String label) public Checkbox(String label, boolean state) public Checkbox(String label, boolean state, CheckboxGroup group),Checkbox,Checkbox类常用方法: public String getLabel( ) public void setLabel(String label) public boolean getState( ) public void setState(boolean state) public void setCheckboxGroup (CheckboxGroup g),List,2、列表框(List) 以目录的形式显示字符串选项,并允许用户从中选取一项或多项,构成目录的元素,我们称之为列表项(item) 构造方法: public List(int rows) public List(int rows, boolean multipleMode),List,List类常用方法: public void add(String item) public void add(String item, int index) public String getItem(int index) public String getSelectItem( ) public void remove(int position) public void removeAll( ) public void select(int index),Choice,3、下拉式列表框(Choice) 与List一样Choice也支持目录形式的列表,不同的是用户只能选取其中一项,被选中的项才会显示出来。 构造方法: public Choice( ),Choice,Choice的常用方法大多与List的常用方法相同,另外,Choice常使用select方法来设定选中的项。 public void select(int pos) public void select(String str),返 回,4.4 常用的AWT组件 -Component类的常用方法,Component类的常用方法如下,各种常用组件都可以使用这些方法来设置属性: public int getX( ) , public int getY( ) public int getWidth( ) , public int getHeight( ) public void setLocation(int x,int y) public void setSize(int width, int height) public void setBounds(int x, int y, int width , int height),Component类的常用方法,续 Component类的常用方法: public void setVisible(boolean b) public void setForeground(Color c) public Color getForeground( ) public void setBackground(Color c) public Color getBackground( ) public void setFont(Font f) public Font getFont( ),Component类的常用方法,说明: Color类用以表示颜色,其构造方法如下: public Color(int r, int g, int b) Color类提供了若干静态常量用于表示常见的颜色,如Color.RED、Color.GREEN、Color.BLUE、Color.WHITE、Color.GRAY、Color.
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:大学JAVA高级程序设计-王路群-课件PPT
链接地址:https://www.renrendoc.com/p-21836114.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!