Swing的通体设计及MVC体系结构(转)
Swing的整体设计及MVC体系结构(转)
一:Swing的整体设计
1, 它是建立在Awt的基础之上,是Awt的增强版本,包括大多数的轻量组件的组件集和插入式外观。Swing的设计是基于MVC的体系结构,允许Swing组件被不同的数据模型和视图所替代,这样就产生了“可插入外观”。
2, Awt最初只包括对等到组件相关联重量组件,它们在自己的本地不透明窗口中绘制。轻量组件没有本地对等组件,而且它们在自己的重量容器中绘制。Swing中除了顶层容器 (JFrame, JDialog, JApplet, JWindow)外,都是轻量组件,轻量组件必须包含在一个重量容器中。
3, Swing包结构
javax.swing Swing组件和实用工具;
javax.swing.border Swing轻量组件的边框;
javax.swing.colorchooser JColorChooser的支持类/接口;
javax.swing.event 事件和贞听器类;
javax.swing.filechooser JFileChooser的支持类和接口;
javax.swing.plaf 抽象类,它定义“UI代表”的行为;
javax.swing.plaf.basic 实现所有标准界面样式公共的基类;
javax.swing.plaf.metal 用户界面代表类,它们实现了Metal界面样式;
javax.swing.table JTable组件的支持类;
javax.swing.text 支持文档的显示和编辑;
javax.swing.text.html 支持显示和编辑html文件;
javax.swing.text.html.parser Html文件的分析器类;
javax.swing.text.rtf 支持显示和编辑RTF文件;
javax.swing.tree JTree组件的支持类;
javax.swing.undo 支持取消操作;
二:Swing的MVC体系结构
1, Swing的Model,这是MVC中的M—模型部分,它保存了Swing组件所需要的数据,Swing组件的UI需要根据它来展现。
2, Swing的UI类,这是MVC模式的V—视图部分,它根据组件的Model中的数据,执行绘制、展现Swing组件。
3, Swing组件类,它封装了Swing的UI对象和Model对象。我们一般通过它来操作Swing组件,不会直接使用Swing组件内部的UI对象和Model对象。
4,Swing组件上还可以注册一系列的事件临听器,它们是MVC模型中的C—控制器。Swing的UI类,临听Model对象的数据改变,即时进行重绘界面的工作。
5,Swing的MVC,为了避免将有紧密耦合关系的视图与控制程序分割开来,需要将视图和控制器协调起来,每个组件的协调部分叫该组件的UI代表。这样MVC体系结构就被修改了MUI体系结构。
一:Swing的整体设计
1, 它是建立在Awt的基础之上,是Awt的增强版本,包括大多数的轻量组件的组件集和插入式外观。Swing的设计是基于MVC的体系结构,允许Swing组件被不同的数据模型和视图所替代,这样就产生了“可插入外观”。
2, Awt最初只包括对等到组件相关联重量组件,它们在自己的本地不透明窗口中绘制。轻量组件没有本地对等组件,而且它们在自己的重量容器中绘制。Swing中除了顶层容器 (JFrame, JDialog, JApplet, JWindow)外,都是轻量组件,轻量组件必须包含在一个重量容器中。
3, Swing包结构
javax.swing Swing组件和实用工具;
javax.swing.border Swing轻量组件的边框;
javax.swing.colorchooser JColorChooser的支持类/接口;
javax.swing.event 事件和贞听器类;
javax.swing.filechooser JFileChooser的支持类和接口;
javax.swing.plaf 抽象类,它定义“UI代表”的行为;
javax.swing.plaf.basic 实现所有标准界面样式公共的基类;
javax.swing.plaf.metal 用户界面代表类,它们实现了Metal界面样式;
javax.swing.table JTable组件的支持类;
javax.swing.text 支持文档的显示和编辑;
javax.swing.text.html 支持显示和编辑html文件;
javax.swing.text.html.parser Html文件的分析器类;
javax.swing.text.rtf 支持显示和编辑RTF文件;
javax.swing.tree JTree组件的支持类;
javax.swing.undo 支持取消操作;
二:Swing的MVC体系结构
1, Swing的Model,这是MVC中的M—模型部分,它保存了Swing组件所需要的数据,Swing组件的UI需要根据它来展现。
2, Swing的UI类,这是MVC模式的V—视图部分,它根据组件的Model中的数据,执行绘制、展现Swing组件。
3, Swing组件类,它封装了Swing的UI对象和Model对象。我们一般通过它来操作Swing组件,不会直接使用Swing组件内部的UI对象和Model对象。
4,Swing组件上还可以注册一系列的事件临听器,它们是MVC模型中的C—控制器。Swing的UI类,临听Model对象的数据改变,即时进行重绘界面的工作。
5,Swing的MVC,为了避免将有紧密耦合关系的视图与控制程序分割开来,需要将视图和控制器协调起来,每个组件的协调部分叫该组件的UI代表。这样MVC体系结构就被修改了MUI体系结构。