版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第11章 GUI布局管理器,第11章 GUI布局管理器,本章主要讲述如下内容: Swing常用容器:框架和面板; 布局管理:FlowLayout、BorderLayout、GridLayout和CardLayout。,Swing常用容器,AWT和Swing都提供了容器。讲述Swing中频繁使用的框架和面板。,框架,框架( JFrame)是一种独立存在的容器。 JFrame是Frame的子类,JFrame类对象有边框。 JFrame类的常用构造函数如下: (1) public JFrame( ) (2) public JFrame(String title),框架(续),注意:框架创建以后是不可
2、见的,必须调用Window类的show( )方法或Component类的setVisible(true)方法显示该框架。 编程方法:先定义一个JFrame类的子类,然后在该类的构造函数中调用JFrame类的构造函数;最后,将需要的组件或面板加入到该框架。 例:定义一有用的子类:,import javax.swing.*; public class subJFrame extends JFrame public subJFrame( ) public subJFrame( String title) super(title); protected void frameInit( ) super.
3、frameInit( ); / 调用JFrame类的方法,关闭框架 setDefaultCloseOperation(EXIT_ON_CLOSE); ,框架(续),框架(续),例11-1: 一个完整的JFrame示例 源程序 运行,面板,Swing采用JPanel定义面板; 面板必须包含在另一个容器中; JPanel类的常用构造函数: (1) public JPanel ( ) 使用缺省的布局管理器 (2) public JPanel (LayoutManager layout) 例11-2:定义两个面板,并设置不同的前景和背景色。源程序 运行,布局管理器,常用的四种布局管理器: FlowLa
4、yout BorderLayout CardLayout GridLayout 布局管理的含义:创建这种类型的一个对象,并采用此对象来安排其它容器和基本组件。 各容器默认的布局管理器: FlowLayout默认为Applet、Panel和JPanel的布局; BorderLayout默认为JApplet和JFrame的布局,FlowLayout布局,FlowLayout布局是将组件按加入的先后顺序从左至右排列; 在缺省方式下,FlowLayout布局是将组件放在每行的中央; FlowLayout布局的对齐方式有三种: 左:FlowLayout.LEFT 中:FlowLayout.CENTER
5、右:FlowLayout.RIGHT,FlowLayout布局 (续),常用构造函数如下: (1) public FlowLayout( ) 居中对齐,垂直和水平间隔为5。 (2) public FlowLayout( int align ) 生成一个指定对齐方式的FlowLayout对象。 (3) public FlowLayout( int align, int hor, int ver) 例11-3:每隔1秒调整组件的对齐方式。 源程序 运行,BorderLayout布局,BorderLayout布局是将空间划分为东、西、南、北、中五个区域;分别采用五个字符串表示:EAST、WEST、S
6、OUTH、NORTH和CENTER。 BorderLayout的构造函数如下: (1) public BorderLayout( ) 组件的垂直和水平间隔为0。 (2) public BorderLayout( int hgap, int vgap ) 例11-4:采用BorderLayout布局管理器,每隔1秒动态地隐藏组件,直到隐藏完全部的组件,然后按相反顺序重新显示组件。源程序 运行,GridLayout布局,GridLayout布局是将容器空间划分为网格状,各个组件占据大小相同的区域。 GridLayout类的构造函数: (1) public GridLayout ( ) 生成一个行数
7、为1的GridLayout布局管理器对象。 (2) public GridLayout ( int rows, int cols ) (3) public GridLayout (int rows, int cols , int hgap, int vgap ) 例11-5:采用GridLayout布局管理器,每隔1秒重新设置组件布局。 源程序 运行,CardLayout布局,CardLayout布置管理可以将组件分组,在每一时刻只显示其中的一组; 构造函数: (1) public CardLayout( ) 卡片之间的垂直和水平间隔为0 (2) public CardLayout( int
8、hgap, int vgap ) 指定卡片之间的垂直和水平间隔。,CardLayout布局(续),常用方法: (1) public void first( Container parent ) 显示第一张卡片。 (2) public void last( Container parent ) (3) public void next( Container parent ) 循环显示下一张。 (4) public void previous( Container parent ) 例11-6:采用CardLayout布局管理器,通过鼠标点击可以实现卡片之间的切换。源程序 运行,CardLayout布局(续),CardLayout布局管理器显示卡片的样式和选项卡不同; Java2提供的JTabbedPane容器可以实现选项卡; 例11-7:JTabbedPane的使用方法。源程序 运行,综合应用举例,例11-8(习题1)编写一个华氏温度到摄氏温度的转换程序。通过一个文本框输入华氏温度,通过一个标签输出相应的摄氏温度。采用下列公式进行转换:摄氏温度 = 5 / 9
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年成都外国语学院单招职业适应性考试题库附答案详解
- 2026年广东交通职业技术学院单招职业技能考试题库及参考答案详解一套
- 2026年白城职业技术学院单招职业技能测试题库及参考答案详解一套
- 2026年广西质量工程职业技术学院单招综合素质考试题库及参考答案详解一套
- 2026年辽宁轨道交通职业学院单招职业适应性测试题库及答案详解一套
- 2026年安徽医学高等专科学校单招职业适应性考试题库及参考答案详解一套
- 2026年杭州万向职业技术学院单招职业倾向性考试题库及答案详解一套
- 2026年河南省周口市单招职业适应性考试题库及参考答案详解1套
- 2026年河南信息统计职业学院单招职业技能测试题库带答案详解
- 2026年内江卫生与健康职业学院单招职业技能考试题库及参考答案详解
- 基于短周期价量特征多因子体系
- 基本心理需要满足量表BPNS
- 山西省2022年高中会考数学考试真题与答案解析
- 硝酸银安全技术说明书MSDS
- 焊缝外观检验规范(5817 VT)
- YY 1045.2-2010牙科手机第2部分:直手机和弯手机
- GB/T 4458.1-2002机械制图图样画法视图
- GB/T 26672-2011道路车辆带调节器的交流发电机试验方法
- 铸牢中华民族共同体意识学习PPT
- 发动机的工作原理课件
- PID图(工艺仪表流程图)基础知识培训课件
评论
0/150
提交评论