javaswing9.27课程

王朝java/jsp·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

/**

* Title:swing概观

* Description: swing初步知识

* Copyright: eclipse (c) 2002

* Company:unix

*/

一、swing的概观

swing是目前java不可或缺的窗口工具组,在swing尚未推出之前,写java窗口必须使用AWT(abstract window toolkit)包。AWT没有弹性可言,具体表现在不能随意改变组件外观等。本课程主要讲解swing,AWT免谈。

swing中只有JFrame,JDialog,JWindow与JApplet不是纯java所写成,其余组件和事件响应方法均为纯java所写。

二、swing结构

swing原先是利用MVC(model-view-controller)的概念衍生而成,这个模式应用在smalltalk语言上,MVC概念如下:

model:存储组件数据的地方,如JChockBox中的model将存储所有选项的值,并以boolean值来表示,JTable的model则存储所有表格上的数据。

view:显示组件的外观

controller:处理用户组件的操作,并写改变存储在model中。

MVC图形表示:

view

|

controller

|

model

MVC已经具有清楚的模块结构,因此swing在设计上遵循这样的概念,但作了一些改变。原先独立的view和controller在swing中被合并在一起,称为UI(UI-deldgate)界面,因为swing的发展小组认为这两者关系紧密,分开设计会增加难度。

M-UI结构图:

UI-delegate

|

model

不论swing的结构如何设计,swing中的model均可分成三个种类:

第一种,存储组件内部将被用来操作的数据。如tableModel,and so on.

第二种,存储控制组件操作模式的数据。如JList等

第三种,存储组件本身性质的数据模式。如JSlider等。

三、swing中常用的package

package comments

1.javax.swing 最常用的package,里面包含和各种swing组件的类

2.javax.swing.border 包含与swing组件外框有关的类

3.javax.swing.colorchoser 针对与swing组件外框有关的类

4.javax.swing.event 处理由swing组件产生的事件,有别于AWT事件

5.javax.swing.filechooser 包含针对swing文件选择对话框JFileChooser所设计的类

6.javax.swing.plaf 处理swingx组件外观的相关类

7.javax.swing.plaf.basic 同6

8.javax.swing.plaf.metal 同6

9.javax.swing.plaf.multi 同6

10.javax.swing.table 针对swing表格组件JTable所设计的类

11.javax.swing.text 包含与swing文字框有关的类

12.javax.swing.text.html 同11

13.javax.swing.text.html.parser 同11

14.javax.swing.text.rtf 同11

15.javax.swing.tree 包含swing 树状无件JTree所设计的类

16.javax.swing.undo 包含与swing文字组件Redo或Undo的功能

9.27思考:

1、试说明swing的组件设计的理念以及优于AWT的原因?

2、试说明swing的结构概念

3、为什么将swing的view与controller合在一起,这样有什么用 :)

****大家可以跟贴回答以及得问

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航