服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 核心技术 > SwingAwtApplet > 查看文档

java swing 9.27 课程

/**
  *

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合在一起,这样有什么用 :)
  
  ****大家可以跟贴回答以及得问

扫描关注微信公众号