java开发 葵花宝典 23

上传人:xzh****18 文档编号:56897282 上传时间:2018-10-16 格式:PPT 页数:28 大小:288.50KB
返回 下载 相关 举报
java开发 葵花宝典 23_第1页
第1页 / 共28页
java开发 葵花宝典 23_第2页
第2页 / 共28页
java开发 葵花宝典 23_第3页
第3页 / 共28页
java开发 葵花宝典 23_第4页
第4页 / 共28页
java开发 葵花宝典 23_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《java开发 葵花宝典 23》由会员分享,可在线阅读,更多相关《java开发 葵花宝典 23(28页珍藏版)》请在金锄头文库上搜索。

1、第23章 Swing组件与布局管理器,本章介绍Swing图形设计,其与Awt有什么区别和渊源呢?带着这些疑问阅读本章,会学习到另外一种图形设计方式。书中本着以实例为主的原则,让读者能更加透彻的理解和掌握Swing组件的使用,并且通过比较,观察两个不同图形设计类的异同之处。,23.1 什么是Swing编程,由于Awt本身有很多不完善的地方,所以一个全新的GUI用户类库出现了,就是Swing,然而Swing并没有完全代替Awt,例如事件模型,Swing仍然采用Awt的事件模型,其本身没有事件模型的类,Swing其实就是Awt的一个优化版本。,23.2 MVC设计模式基础,在Swing中,每一个组件

2、都有3个要素: 内容:例如,按钮的状态(是否被按下)、文本框内的文本等等。 外观:组件所表现出来的效果,例如颜色、形状。 行为:组件对事件的处理方式,接受事件后如何处理。 这三个要素的关系是很复杂,所以程序员不要让一个对象具备太多的功能,这跟MVC的模式实现有关。MVC模式包括下面三个部分: 模型(M):用于存储内容,它只关心组件的内容。 视图(V):用于实现组件的外观。 控制器(C):用于实现组件的事件处理。 (具体内容请参照本书),23.3 简单框架设计及实例,在上一章也介绍了如何设计一个框架,只不过是通过Awt类库来设计的,而这一章将通过Swing类库来设计框架。,23.3.1 创建一个

3、空白的框架,在Awt库中有一个Frame类与之对应,而在Swing中与之对应的是JFrame,它是Frame的扩展,同时它也是一个容器。下面将通过一个实例,来分析如何利用Swing创建一个空白的框架。(具体内容请参照本书),23.3.2 创建框架的其他工作,创建一个空框架后,接下来就是给框架设定一个标题,设置标题使用方法: public void setTitle(String title); 这是个设置器,通常有了设置器,一定会有访问器。 Public String getTitle(); (具体内容请参照本书),23.4 简单图形按钮控件的设计及实例,本节将详细的讲述几种按钮控件的设计,并

4、且通过详细的实例让读者有一个很清晰的认识。,22.4.1 Swing中的按钮控件,根据前一章介绍,可以推出按钮的创建过程。具体如下所示。 JButton button=new JButton(buttontext) 但是在API文档中,会发现JButton有5种构造器。分别如下所示。 (具体内容请参照本书),23.4.2 按钮的模型,前面提到了模型的概念,本节将讲述按钮模型的概念。大多数组件的模型类,实现了一个以Model结尾的接口名字,例如按钮就实现了一个ButtonModel的接口。实现了此接口的类可以定义按钮的多种状态。在Swing库包含了一个DefaultButtonModel类,这个

5、类就实现了ButtonModel接口,也就是按钮的默认状态。分析ButtonModel接口中的方法,看看按钮模型所维护的各种数据。(具体内容请参照本书),23.4.3 添加按钮,在Swing中,一般组件都是添加到JPanel中,然后,再将JPanel组件添加到顶层窗口中。如下面的例子,先将组件添加到JPanel中。(具体内容请参照本书),23.4.4 如何添加单选按钮,单选按钮也被称为radioButton,它通过JRadioButton类实现。在一些数据库系统软件中,会出现“性别”单选按钮,通过选择不同的单选按钮,来实现不同性别的选择,下面通过实例演示如何设计单选按钮。(具体内容请参照本书)

6、,23.4.5 复选按钮,复选按钮使用JCheckbox类实现,它跟单选按钮的区别就是一个可以多选,一个只能单选。下面通过实例看看复选按钮的用法。(具体内容请参照本书),23.4.6 单击按钮,单击按钮就是当单击按钮时,按钮会呈现被按下的状态,再单击一下,可以回复原先状态,其使用JToggleButton类来实现。其实它的使用跟前面所有的按钮控件一样,只不过功能不同而已,下面看一个有关单击按钮的实例。(具体内容请参照本书),23.5 简单文本输入组件的设计及实例,在Awt设计中,也讲到过文本框。而Swing类库中的文本框,通过JTextField类和JTextArea类实现,下面将详细介绍他们

7、的使用。,23.5.1 文本域的设计,把一个文本域添加到窗口的步骤,首先是将文本域添加到一个面板中,再将这个面板添加到容器中。其实它的具体用法和Awt中所述的基本一样,只不过在构造器方面有点区别。文本域的构造器:(具体内容请参照本书),23.5.2 密码域的设计,密码域一般用在登录窗口等地方。Swing类库中使用JPasswordField类实现密码域,它的作用就是让所有输入内容以“*”形式出现,这样就不会看到用户的密码了。下面演示一个有关密码域的实例。(具体内容请参照本书),23.5.3 如何设计文本区,文本区相当于Awt中的多行文本框,使用JTextArea类实现,下面是它的构造器。 JT

8、extArea textarea=new JTextArea(int x,int y) 创建一个x行y列的文本区。 JTextArea textarea=new JTextArea(String str) 创建一个有初始文本str的文本区。 (具体内容请参照本书),23.6 标签组件的设计及实例,标签组件的设计非常简单,通过JLabel类实现。下面是标签组件的构造器。 JLabel jl=new JLabel(); 创建一个空的标签对象。 JLabel jl=new JLabel(String str); 创建一个有字符串str的标签对象。 JLabel jl=new JLabel(Strin

9、g str,constant Location); (具体内容请参照本书),23.7 选择组件的设计及实例,选择组件有很多种,在这里主要讲述组合列表框,组合列表框就相当于Awt中的下拉列表框,它使用JComboBox类实现。如何设计一个组合列表框呢?要使用数组来设计,下面通过一个实例来说明。(具体内容请参照本书),22.8 菜单的组件设计,菜单的设计在前面Awt中已经讲过,在Swing中的设计方式基本上同Awt差不多,只是有一点细微的差别。下面通过一个实例,学习如何在Swing中创建一个菜单。(具体内容请参照本书),23.9 对话框的种类及用法,对话框应该不是什么陌生的概念,在平时应用中会经常

10、遇到,并且在前一章中,也详细介绍过对话框,本节将讲述如何设计Swing类库中的对话框。对于选项对话框,Swing提供了一个很方便的类JOptionPane,该类能够让程序员不需要编写代码,就可以生成一个对话框。其主要提供了一些简单的对话框,用于收集用户的一个简单信息。(具体内容请参照本书),23.10 复杂布局管理器的种类及用法,上一章中,讲述了很多布局管理器的知识,本章将介绍一些复杂布局管理器,其中包括箱式布局管理器和网格组布局管理器。,23.10.1 箱式布局的设计,箱式布局比GridLayout布局要灵活的多,这个也是它比较实用的地方。Swing提供的BOX类就是箱式布局类,它的默认布局

11、管理器就是BoxLayout,在箱式布局管理器中包括了两种箱子:一种是水平箱,另外一种是垂直箱。(具体内容请参照本书),23.10.2 网格组布局的设计,布局管理器是一种很先进的布局管理器,通过网格的划分,可看到每个组件都占据一个网格,也可以一个组件占据几个网格,如果要采用网格组布局管理器,一般来说可以采用下列步骤:(1)创建一个GridBagLayout对象。(2)将容器设成此对象的布局管理器。(3)创建约束(GridBagConstraints)对象。(4)创建各个相应的组件。(5)添加各个组件与约束到网格组布局管理器中。(具体内容请参照本书),23.11 通过实例熟悉Swing编程,本小

12、节给出一个综合实例,希望读者能够真正掌握,如何使用Swing编程。(具体内容请参照本书),23.12 常见疑难解答,(具体内容请参照本书),23.12.1 如何处理菜单的启用和禁用功能,答:当打开一个只读文件时,不允许保存和另存为,此时可以使用菜单项的禁用和启用功能。在菜单监听器接口MenuListener中声明了3个方法,如下所示。(具体内容请参照本书) public void menuSelected(MenuEvent event) public void menuDeSelected(MenuEvent event) public void menucanceled(MenuEvent event) (具体内容请参照本书),23.12.2 如何编写快捷键的程序,答:其实很简单,可以按照下面的代码方式定义一个快捷键。 JMenu save=new JMenu(“save); Save.setMnemonic(s); 这里将save菜单项的快捷键定义为“s”。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号