一: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体系结构。
分享到:
相关推荐
此项目是用java swing编写的桌面应用程序,采用mvc设计模式进行分层,所使用的数据从xml文件读取,下载后可直接导入到工作空间运行
一个采用Java Swing和MySQL的桌面应用程序,具有MVC体系结构,并为学生、教师和管理员提供三个用户仪表板.zip
jgraph一个简单的开始JGraph是一个开源的,兼容Swing的基于MVC体系结构图形组件
Jgraph是一个开源的,兼容Swing的基于MVC体系结构图形组件,具有以下特点: 1) 完全Swing兼容; 2) 简单、高效的设计; 3) 时间效率高; 4) 100 %纯Java;
11 2.2 MVC体系结构 12 2.2.1 模型 12 2.2.2 视图 12 2.2.3 控制器 13 第三章 图形图像软件的设计 14 3.1图形处理模块的设计 14 3.1.1结构设计 14 3.1.2功能描述 14 3.1.3图形处理模块结构图 14 3.1.4主要类设计 15 ...
JCameo是一个模型驱动的Swing框架,支持GUI开发的各个方面。 关键功能是大量的小部件,MVC体系结构,数据绑定和验证支持以及基于消息的通信。 JCameo需要Java 1.5。
使用Java和JFreeChart的数据分析程序 ...模型-视图-控制器(MVC)是一种软件体系结构模式,可将信息的表示形式与用户与之的交互分开。 该模型由应用程序数据,业务规则,逻辑和功能组成。 视图可以
例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;...
例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;...