




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、容器与界面精准布局图形用户界面概述容器类布局管理器主 要内 容图形用户界面(Graphics User Interface,GUI)是指使用包括窗口、图标、组件等的图形显示方式,鼠标、键盘等输入设备,事件驱动机制来实现与用户进行交互操作的应用程序界面。计算机应用发展到现在,GUI已经成为应用程序的基本要求。14.1 图形用户界面概述14.1 图形用户界面概述窗口及常见的图形用户界面元素设计图形用户界面,主要完成两个任务: (1)根据程序的需要选择恰当的图形组件构造界面,并进行合理的布局。 (2)利用事件驱动机制定义界面组件与用户之间的交互,对用户行为进行响应。14.1 图形用户界面概述Java
2、专门设计了类库来满足各种图形用户界面元素和用户交互事件。Java的GUI类库由和两个包组成,分别称为AWT组件库和Swing组件库。14.1 图形用户界面概述包, AWT, 抽象窗口工具集依赖本地GUI, “重型组件”(heavyweight component)包, Swing组件库不依赖本地GUI, “轻型组件”(lightweight compont)14.1 图形用户界面概述14.1 图形用户界面概述GUI类的分类:容器类 container class用来包含其他组件。如: JFrame, JPanel, JApplet, 14.1 图形用户界面概述GUI类的分类:辅助类 helpe
3、r class组件和容器用来绘制和放置对象如: Graphics, Color, Font, FontMetrics, Dimension, 14.1 图形用户界面概述GUI类的分类:组件类 component class用户界面的组成部分如: JButton, JTextField, JTextArea, 14.2 容器类容器是图形用户界面设计中必不可少的界面元素,它是用来放置其它组件的特殊组件。Swing容器类主要包括:顶层容器面板容器图形用户界面的顶层容器是指应用程序的最外层容器,通常直接出现在操作系统的桌面上,顶层容器不能再被其它容器包含。14.2.1 顶层容器:用于构造GUI窗口的顶
4、层容器类,是组织管理其它Swing组件形成复杂界面的基础。:用于构造GUI对话框窗口的顶层容器类,一般用于接收来自用户的指令或通知事件发生的容器。Swing组件的顶层容器类主要有:import javax.swing.JFrame;public class MyFrame public static void main(String args) JFrame frame = new JFrame(My Frame);框架JFrame1. 创建框架 frame.setSize(400, 300); frame.setLocationRelativeTo(null); (JFrame.EXIT_O
5、N_CLOSE); frame.setVisible(true); 框架JFrame1. 创建框架掌握: 构造方法; 设置窗口大小; 显示窗口演示import javax.swing.*;import java.awt.*;public class MyFrameWithComponents public static void main(String args) JFrame frame = new JFrame(Adding Components into the Frame);框架JFrame2. 在框架中添加组件 Container container = frame.getConte
6、ntPane(); JButton jbtOK = new JButton(OK); container.add(jbtOK);frame.setSize(400,300); frame.setVisible(true);CLOSE); 演示import javax.swing.JFrame;public class FrameUseInherit extends JFrame public FrameUseInherit() /* 无参构造方法 */ this(A Frame Demo);框架JFrame3. 使用继承创建窗口 public FrameUseInherit(String ti
7、tle) /* 参数为窗口标题的构造方法 */ super(title); this.setSize(400,300);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); public static void main(String args) /* main方法 */ new FrameUseInherit(); new FrameUseInherit(使用继承创建的窗口); 演示14.2.2 面板容器面板容器是一种中间层容器,可放置其他GUI组件,也可作为一个组件添加到其他容器中。利用面板容
8、器可以实现界面的嵌套和复杂的GUI界面。Swing包主要面板容器:Jpanel类JScrollPane类14.2.2 面板容器类为一个通用的轻型容器,主要用于管理放置其中的GUI组件以形成界面的局部功能,再作为一个整体添加到顶层容器或面板容器。另一个作用是作为绘图操作的“画布”。 类,为需要进行内容滚动的GUI组件提供一个轻型的滚动视图。当要显示的内容超出组件范围示,根据设置自动出现水平和垂直滚动条。14.2.2 面板容器JPanel容器在Java GUI设计时, 经常使用JPanel作为分组放置用户界面组件的子容器。并进行面板有嵌套。演示14.3 布局管理器布局管理器管理GUI组件在界面容器
9、的位置和大小。布局管理器由布局管理类创建,所有布局管理器类都实现了java.awt. LayoutManager接口。14.3 布局管理器容器包含一个setLayout(LayoutManager)方法设置其布局管理器。最常用的三种布局管理器:FlowLayoutGridLayoutBorderLayout14.3.1 FlowLayout流式布局FlowLayout按照添加顺序, 由左向右将组件排列在容器中, 放满一行就开始新的一行。14.3.1 FlowLayout组件在容器中有3种对齐方式:FlowLayout.LEFTFlowLayout.CENTERFlowLayout.RIGHT1
10、4.3.1 FlowLayoutFlowLayout的构造方法:public FlowLayout(int align, int hGap, int vGap)public FlowLayout(int align)public FlowLayout()14.3.1 FlowLayout注意: 组件大小由自身决定。14.3.2 GridLayoutGridLayout按照构造方法定义的行数和列数, 以网格的形式排列组件。按照添加顺序自左向右, 自上而下。14.3.2 GridLayoutFlowLayout的构造方法:public GridLayout(int rows, int cols,
11、int hGap, int vGap)public GridLayout(int rows, int cols)public GirdLayout()行数和列数可以为0, 但不能同时为0. 若其中一个为0, 则不为0的维数已经确定, 为0的维数由布局管理器动态决定。如果行数和列数均不为0, 则行数为主要参数. 即行数按指定数值固定, 列数动态调整。14.3.2 GridLayout行数和列数的指定规则:14.3.2 GridLayout注意: 组件大小相同,由布局管理器动态控制。14.3.3 BorderLayoutBorderLayout把窗口分为5区: 东、南、西、北、中。 使用add(c
12、omponent, index)方法添加组件。14.3.3 BorderLayout其中参数index的取值可以是:BorderLayout.EASTBorderLayout.SOUTHBorderLayout.WESTBorderLayout.NORTHBorderLayout.CENTER14.3.3 BorderLayoutBorderLayout的构造方法:public BorderLayout(int hGap, int vGap)public BorderLayout()14.3.3 BorderLayout注意:东/西组件的宽度固定,南/北组件的高度固定,其它由布局管理器动态控制。14.3.4 布局管理器的属性各布局管理器均有属性及相应的访问器和修改器:FlowLayout: alignment, hGap, vGapGridLayout: rows,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农村房屋拆除合同样本
- 中石油合作合同样本
- 修建简易合同标准文本
- 买房退款合同标准文本
- 第11讲 人体的呼吸 2025年会考生物学专题练习(含答案)
- 仓储补充协议合同样本
- 买卖花椒合同样本
- 学生志愿服务活动安排计划
- 公积金要求合同标准文本
- 农场安装家具合同样本
- 全国肉牛产业链分析报告
- 路边小吃摊食品安全问题探究课件
- 人文关怀护理课件胃镜室
- 新教材高中地理必修一学用地形图探究地貌特征课件
- 中国成人急性呼吸窘迫综合征(ARDS)诊断与非机械通气治疗指南(2023版)解读
- 国家开放大学《教育学》形考论坛1-4参考答案
- 中建八局-安全管理制度汇编
- 抑郁病诊断证明书
- 开腹胆囊切除手术知情同意书
- 介绍梅西的英语演讲稿
- 焦虑、抑郁自评量表(SAS、SDS)
评论
0/150
提交评论