- 3
- 0
- 约7.09千字
- 约 43页
- 2017-06-07 发布于湖北
- 举报
Java程序设计 图形界面设计 内容 创建图形界面 AWT事件模型 Swing常用组件 6.1.1 图形用户界面概述 Java1.0的出现带来了抽象窗口工具箱(AWT)。设计目标是希望构建一个通用的GUI,使得利用它编写的程序能够运行在所有的平台上,以实现Sun公司提出的口号“一次编写,随处运行”。 在Java1.2中,Sun公司推出了新的用户界面库:Swing。相对AWT来说,Swing功能更强大、使用更方便,它的出现使得Java的图形用户界面上了一个台阶。 6.1.2 GUI包 java.awt包 称为抽象窗口工具集AWT(Abstract Window Toolkit),是使用Java进行GUI设计的基础。 javax.swing包 Swing组件存放在javax.swing包中。几乎所有AWT组件对应有新功能更强的Swing组件。另外还加入了一些全新的组件。Swing组件在名称上前面多了一个字母“J” 。 6.1.3 容器、组件和布局 容器和组件 组件是可以用图形化的方式显示在屏幕上并能够与用户进行交互的对象。 容器是一种特殊的组件,一种能够容纳其他组件或容器的组件。 布局管理器 为了使图形用户界面具有良好的平台无关性,提供了专门用来管理组件在容器中的布局的工具。 6.1.4 Java的图形类结构 6.1.5 JFrame 用于在 Swing 程序中创建窗体 构造函数: JFrame() JFrame(String Title) 组件必须添加至内容窗格,而不是直接添加至 JFrame 对象,示例: JFrame 示例 6.1.6 JLabel 它既可以显示文本也可以显示图像 构造函数: JLabel(Icon icon):icon表示使用的图标 JLabel(String text,Icon icon,int align):text表示使用的字符串; icon表示使用的图标;align表示水平对齐方式,其值可以为:LEFT(默认)、RIGHT、CENTER。 其它常用方法 getText() setText(String text) 6.1.7 JButton 用于创建按钮 构造函数: JButton() : JButton(Icon icon) JButton(String text) JButton(String text, Icon icon) 6.1.7 JTextField 此类的构造函数包括: JTextField() JTextField(int columns) JTextField(String text) 6.1.8 JPanel JPanel 是一个中间容器 用于将小型的轻量级组件组合在一起 JPanel 的缺省布局为 FlowLayout JPanel 具有下列构造函数: JPanel() JPanel(LayoutManager lm) 6.1.9 示例 SwingComps.java 6.2 Java AWT事件处理机制 事件源:是一个事件的产生者 例如,在Button组件上点击鼠标会产生以这个Button 为源的一个ActionEvent。这个ActionEvent实例是一个对象,它包含关于刚才所发生的那个事件的信息。 事件侦听者:就是一个接收事件、解释事件并处理用户交互的对象。 6.2.1 层次事件模型( JDK1.0) 事件先发送到组件,然后沿容器层次向上传播。没有被组件处理的事件会自动地继续传播到组件的容器。 特点:简单,但事件只能由产生这个事件的组件或包含这个组件的容器处理,并且效率低。 6.2.2 委托事件模型( JDK1.1) 在这个模型中,事件被送往产生这个事件的组件,随后将事件转发给事件侦听者,事件侦听者在能够接收事件之前必须先注册到事件源中。而为了侦听者能够接收事件,侦听者必须实现与事件相对应的Listener接口。 事件是只向注册的监听者报告的对象。每个事件都有一个对应的监听者接口,规定哪些方法必须在该事件侦听者的类中定义。实现此接口的类的对象可以注册为一个该事件的监听者. 委托事件模型 示例:ActionDemo.java 6.2.3 方法类型和接口 6.2.4 事件Adapters(适配器) 一旦指定一个类实现了某个事件监听器接口,就必须实现这个监听器接口的所有方法,否则你只能将你的类定义为抽象类而无法定义这个类的实例。从上面的例子我们可以看到,实现每个Listener接口的所有方法的工作量均是非常大的,尤其是MouseListener接口和ComponentListener接口。 以MouseListener接口为例,它定义了如下方法: mouseClicked(MouseEvent) mouseEntered(MouseEvent) mouseE
您可能关注的文档
- Intouch组态软件opclink驱动配置与测试方法.doc
- 第八讲 嵌入式系统设计.ppt
- IPHONE4,4S和IPHONE5详细区别(有图片)对比总结.doc
- 第八讲 数据资料.ppt
- 第八讲 CDMA移动通信系统(一).ppt
- IPv6终端技术及产品现状.ppt
- 第八讲 电解质溶液习题解答.doc
- IP分片技术与其故障处理.doc
- 第八讲 电子商务环境.ppt
- IQ讯号之剖析和探讨.pdf
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 传媒法规与伦理教学课件(共22章)新闻伦理研究综述.pdf VIP
- 汽车行驶记录仪产品使用说明书.PDF VIP
- 2026年成都市美容医疗诊所医美项目安全规范运营可行性研究报告.docx VIP
- ocean培训petrel re快速入门工作流程.pdf VIP
- (四年级奥数班讲义.doc VIP
- 单病种病案数据填报指导手册.doc
- 企业 IPO 筹备方案(最新版,附时间表 + 材料).docx VIP
- 深圳初三数学联考模拟试题.docx VIP
- 高考历史二轮总复习精品课件 第四板块 世界现代史 第十七讲 现代科技的发展与当今世界发展的趋势.ppt VIP
- 2024年菏泽职业学院单招数学考试模拟试题及答案解析.docx VIP
原创力文档

文档评论(0)