JAVA程序员培训定制课程c10.ppt
《JAVA程序员培训定制课程c10.ppt》由会员分享,可在线阅读,更多相关《JAVA程序员培训定制课程c10.ppt(33页珍藏版)》请在三一文库上搜索。
1、第十章,GUI应用程序设计,2,本章内容,Java抽象窗口工具集(AWT) Java组件和容器 常用组件类型 布局管理器及其使用,3,抽象窗口工具集(AWT),AWT- AbstractWindow Toolkit GUI - Graphical User Interface AWT中定义了多种类和接口,用于在Java Application/Applet中进行GUI设计 java程序要显示的GUI组件必须是抽象类Component或MenuComponent的子类,4,java.awt 包,java.awt包 提供了基本的java程序GUI设计工具。 Component/MenuCompon
2、ent Container LayoutManager,5,组件(Component),Java的图形用户界面的最基本组成部分是组件,组件是一个可以以图形化的方式显示在屏幕上并能与用户进行交互的对象,例如一个按钮,一个标签等。 组件不能独立地显示出来,必须将组件放在一定的容器中才可以显示出来。,6,容 器(Container),容器(Container)实际上是Component的子类,因此容器类对象本身也是一个组件,具有组件的所有性质,另外还具有容纳其它组件和容器的功能。 容器类对象可使用方法add()添加组件 两种主要的容器类型 Window: 可自由停泊的顶级窗口 Panel:可作为容器
3、容纳其它组件,但不能独立存在,必须被添加到其它容器中(如Window 或 Applet),7,组件定位,Java组件在容器中的位置和尺寸由布局管理器决定 如要人工控制组件在容器中的大小位置,可取消布局管理器,然后使用Component类的下述成员方法: setLocation() setSize() setBounds(),8,Frame类,Frame类是抽象类Window的子类 Frame对象显示效果是一个“窗口”,带有标题和尺寸重置角标 默认初始化为不可见的,可使用setVisible(true)方法使之变为可见 默认的布局管理器是BorderLayout 可使用setLayout()方法
4、改变其默认布局管理器,9,Frame类继承层次,java.lang.Object | +-java.awt.Component | +-java.awt.Container | +-java.awt.Window | +-java.awt.Frame,10,Frame 应用举例,import java.awt.*; public class TestFrame public static void main( String args) Frame f = new Frame(“My First Test“); f.setSize( 170,100); f.setBackground( Colo
5、r.blue); f.setVisible( true); ,11,Panel类,提供容纳组件的空间 可以采用和所在容器不同的布局管理器 Panel类的继承层次,java.lang.Object | +-java.awt.Component | +-java.awt.Container | +-java.awt.Panel,12,FrameWithPanel应用举例,import java.awt.*; public class TestFrameWithPanel public static void main(String args) Frame f = new Frame(“MyTest
6、 Frame“); Panel pan = new Panel(); f.setSize(200,200); f.setBackground(Color.blue); f.setLayout(null); / 取消布局管理器 pan.setSize(100,100); pan.setBackground(Color.green); f.add(pan); f.setVisible(true); ,13,Ex1,练习M10-10、12页Frame与Panel组件的使用,对使用AWT组件创建图形用户界面机制建立初步认识;,14,布局管理器,为了使我们生成的图形用户界面具有良好的平台无关性,Java
7、语言中,提供了布局管理器这个工具来管理组件在容器中的布局,而不使用直接设置组件位置和大小的方式。 每个容器都有一个布局管理器,当容器需要对某个组件进行定位或判断其大小尺寸时,就会调用其对应的布局管理器。,15,容器布局 (Container Layouts),FlowLayout BorderLayout GridLayout CardLayout GridBagLayout,16,默认布局管理器,Component,Container,Window,Panel,Frame,Dialog,Applet,BorderLayout,FlowLayout,17,FlowLayout布局管理器,Flo
8、wLayout是Panel类的默认布局管理器 FlowLayout布局对组件逐行定位,行内从左到右,一行排满后换行 默认对齐方式为居中对齐 不改变组件的大小,按组件原有尺寸显示组件 可在构造方法中设置不同的组件间距、行距及对齐方式,18,FlowLayout 举例,import java.awt.*; public class TestFlowLayout public static void main(String args) Frame f = new Frame(“Flow Layout“); Button button1 = new Button(“Ok“); Button butto
9、n2 = new Button(“Open“); Button button3 = new Button(“Close“); f.setLayout(new FlowLayout(); f.add(button1); f.add(button2); f.add(button3); f.setSize(100,100); f.setVisible(true); ,19,FlowLayout 的构造方法,new FlowLayout(FlowLayout.RIGHT,20,40); 右对齐,组件之间水平间距20个像素,竖直间距40个像素; new FlowLayout(FlowLayout.LEF
10、T); 左对齐,水平和竖直间距为缺省值:5; new FlowLayout(); 使用缺省的居中对齐方式,水平和竖直间距为缺省值:5;,20,BorderLayout 布局管理器,BorderLayout是Frame类的默认布局管理器 BorderLayout将整个容器的布局划分成东、西、南、北、中五个区域,组件只能被添加到指定的区域 如不指定组件的加入部位,则默认加入到Center区域 每个区域只能加入一个组件,如加入多个,则先前加入的组件会被遗弃,21,BorderLayout 布局管理器,BorderLayout型布局容器尺寸缩放原则 北、南两个区域只能在水平方向缩放(宽度可调整) 东、
11、西两个区域只能在垂直方向缩放(高度可调整) 中部可在两个方向上缩放,North,South,West,Eest,Center,22,BorderLayout举例,import java.awt.*; public class TestBorderLayout public static void main(String args) Frame f; f = new Frame(“Border Layout“); Button bn = new Button(“BN“); Button bs = new Button(“BS“); Button bw = new Button(“BW“); Bu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 程序员 培训 定制 课程 c10
链接地址:https://www.31doc.com/p-2145517.html