12第12章图形用户界面程序设计入门.ppt
《12第12章图形用户界面程序设计入门.ppt》由会员分享,可在线阅读,更多相关《12第12章图形用户界面程序设计入门.ppt(50页珍藏版)》请在三一文库上搜索。
1、第12章 图形用户界面程序设计入门,学习目标,浏览简单的GUI组件 (12.2). 描述 Java GUI 的API 层次结构 (12.3). 使用框架、面板和简单的GUI组件创建用户界面 (12.4). 理解布局管理器的作用 (12.5). 使用 FlowLayout, GridLayout, 和 BorderLayout 布局管理器在容器中 设置组件的布局 (12.5). 使用 Color 和 Font 类 (12.6-12.7). 使用 JPanel 创建子容器 (12.8). 使用 paintComponent 方法在面板上画图 (12.9). 使用 Graphics 类中的绘图方法绘
2、制字符串、直线、矩形、椭圆、弧形、多边形等 (12.9).,GUI 组件,/ Create a button with text OK JButton jbtOK = new JButton(“OK“); / Create a label with text “Enter your name: “ JLabel jlblName = new JLabel(“Enter your name: “); / Create a text field with text “Type Name Here“ JTextField jtfName = new JTextField(“Type Name Her
3、e“); / Create a check box with text bold JCheckBox jchkBold = new JCheckBox(“Bold“); / Create a radio button with text red JRadioButton jrbRed = new JRadioButton(“Red“); / Create a combo box with choices red, green, and blue JComboBox jcboColor = new JComboBox(new String“Red“, “Green“, “Blue“);,按钮,标
4、签,文本框,复选框,单选按钮,组合框,Swing vs. AWT,为什么GUI组件的类名都有前缀J呢?为什么不用Button,而用JButton呢? 刚引入java的时候,图形组件存放于抽象窗口工具集(AWT)。 AWT 适合开发简单图形界面,对复杂的GUI项目不适用,因为它的解决方案非常适用于底层平台. 随着Java 2的发行, AWT 逐渐被更稳定、通用、灵活的库取代,即 Swing 组件库(Swing components). java.awt.Window 或 java.awt.Panel子类的组件必须使用具体平台上的本地GUI来绘制。 . 不依赖本地GUI的Swing 组件成为轻型组
5、件,AWT组件称为重型组件 。 Swing GUI组件类的开都有前缀字母J。,GUI 程序所用类的层次结构图,Container 类,Container 类用来包含其它组件。,GUI 辅助类,辅助类是组件和容器用来绘制和放置对象的。,Swing GUI 组件,核心组件,扩展组件,AWT 组件,框架Frames,Frame 是不能包含在其它窗口内的窗口. 在java GUI 程序中,它是包含其他Swing用户界面组件的容器。,创建框架,Run,import javax.swing.*; public class MyFrame public static void main(String arg
6、s) JFrame frame = new JFrame(“Test Frame“); frame.setSize(400, 300); frame.setVisible(true); frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE); ,在 Frame中添加组件,/ Add a button into the frame frame.getContentPane().add( new JButton(“OK“);,Run,MyFrameWithComponents,Title bar,Content pane,注,内容窗格( cont
7、ent pane)是 Container的一个子类 。 添加控件也可以使用以下语句: Container container = frame.getContentPane(); container.add(new JButton(“OK“); 内容窗格伴随着JFrame对象的创建而创建的,getContentPane方法简单地返回该内容窗格的引用,可以使用这个引用访问内容窗格。,框架居中,Run,CenterFrame,默认情况下,框架在屏幕的左上角显示。,布局管理器,Java的布局管理器提供了一层抽象,自动把用户界面映射到所有的窗口系统。 Java的GUI组件在容器中的位置由容器的布局管理器
8、来安排。 使用 setLayout(LayoutManager) 方法在容器中设置布局管理器。,布局管理器种类,FlowLayout (Chapter 12) GridLayout (Chapter 12) BorderLayout (Chapter 12) 其他布局管理器将在下册介绍。,FlowLayout布局管理器,FlowLayout布局管理器按照添加的顺序,由左到右将组件排列在容器中,放满一行,就开始新的一行。,Run,FlowLayout布局管理器,ShowFlowLayout,Run,使用 FlowLayout布局管理器方式,FlowLayout 构造方法,public FlowL
9、ayout(int align, int hGap, int vGap) 根据指定的对齐方式、水平间距和垂直间距构造一个新的FlowLayout对象。间距用像素度量。 public FlowLayout(int alignment) 根据指定的对齐方式构造一个新的FlowLayout对象。默认的间距为5个像素。 public FlowLayout() 构造一个新的FlowLayout对象,默认的对齐方式是居中。默认的间距为5个像素。,GridLayout布局管理器,根据构造方法定义的行数和列数,GridLayout布局管理器以网格(矩阵)的形式排列组件。 组件按照添加的顺序从左到右排列。,Sh
10、owGridLayout,Run,GridLayout布局管理器,使用 GridLayout布局管理器方式,ShowGridLayout,Run,GridLayout构造方法,public GridLayout(int rows, int columns) 指定行和列 public GridLayout(int rows, int columns, int hGap, int vGap) 指定行、列、水平间距和垂直间距,BorderLayout布局管理器,BorderLayout布局管理器将窗口分成5个区:东区、南区、西区、北区和中央。,ShowBorderLayout,Run,使用add(C
11、omponent,index)方法添加组件, index可以是: BorderLayout.EAST, BorderLayout.SOUTH, BorderLayout.WEST, BorderLayout.NORTH, BorderLayout.CENTER.,BorderLayout布局管理器,ShowBorderLayout,Run,12.6 颜色类 Color,可以使用 java.awt.Color 类为GUI组件设置颜色.颜色由红、绿、蓝三原色组成. Color c = new Color(r, g, b); 例如: Color c = new Color(228, 100, 255
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 12 图形 用户界面 程序设计 入门
链接地址:https://www.31doc.com/p-2131319.html