转自:http://blog.csdn.net/tuxq5721/article/details/17290809
Swing原先是利用MVC(Model -View -Controller)的概念衍生而出。 |
|
Swing原先是利用MVC(Model -View -Controller)的概念衍生而出 |
Model |
存储组件数据。例如JCheckBox中的Model将存储所有选项的值,并以Boolean值来表示,而JTable的Model则会存储所有表格上的数据。 |
View |
显示组件的外观。 |
Controller |
处理用户在组件上的操作,并将改变后的数据存储在Model中。 |
由于MVC具有清楚的模块结构,因此Swing在设计上也遵循这样的概念,但做了一点小小的改变。原先独立出现的View与Controller在Swing中是将它合并在一起的,并称为委托式UI界面(UI-delegate),原因是Swing的发展小组认为这两都具有紧密的相关性,若分开设计并没有太多的好处,且会提高设计上的难度。所以,原先的MVC结构就被更改成M-UI结构。 |
|
Swing组件的Model可分成3类 |
第一种:存储组件内将被用来操作的数据。 |
该模式最常被用来显示不同的数据显示方式,如TableModel、ListModel、ComboBoxModel、Document等。TableModel是存储JTable上所有字段的数据,ListModel是存储JList上所有项目的数据,Document是存储文字输入组件(JTextField、JTextArea等)内的所有内容。 |
第二种:存储控制组件操作模式的数据。 |
例如在JList或JTable中,我们可以使用ListSelectionModel来决定用户一次是否能选择多列的数据,或是JTable的TableColumnModel可用来设置JTable中每个单元格的组件类型(如 JTextField 或 JComboBox 等)。 |
第三种:存储组件本身性质的数据模式。 |
例如JSlider或JProgressBar组件都有minimun、maximun、extent与value四个参数值,用来代表组件的最小值、最大值、延伸区值与初始设置值,这四个参数值存储在BoundedRangeModel中。 |
当用户与界面有任何交互时,所有改变的值会更改至Model中原有设置的数据,此时Controller会负责调用更改画面与变更Model数据的操作。 |
相关推荐
—————————————————————————————————————— 2、实验思路(详细描述解决问题的整体思路、涉及的算法思想及数据结构等) 该实验运用了数据库的知识,模型 视图 组件也被应用在...
Java开发课程设计基于swing做的数据结构演示系统源代码。介绍 排序算法 包括直接插入排序、希尔排序、简单选择排序、冒泡排序、快速排序,可以实现十个数的排序演示,有追踪数据变化的功能。 二叉树遍历 该模块实现...
(一) Spring 开发 Swing GUI 简介——依赖注入和富客户机 5 关于本教程 5 前提条件 6 Spring 和依赖注入概述 7 什么是 Spring 框架? 7 什么是依赖注入? 7 环境设置 7 选择编译环境 7 设置 Ant 8 通过 Ant 自动下载...
第7章 我要彩色照片——SWING的基本概念 141 7.1 讲解 142 7.1.1 Swing的基本概念 142 7.1.2 Swing组件继承关系 142 7.1.3 Swing组件一览 143 7.1.4 Swing和MVC设计模式 144 7.1.5 Swing的单线程模型 145 7.2...
java课程设计大作业,java、算法练手项目,适合初学java、数据结构的同学拿来学习研究,基于java、GUI开发的小游戏,程序都经过测试,可以直接运行,资源含程序运行所需的源码、资源文件等全部数据,有需要的可放心...
过程中也难免存在些遗憾——有些更好的想法没有付诸实施,原因在于LNF代码的结构很多时候并不像Swing本身一样优秀(更多时候是LNF创造者们有所保留,因为LNF代码难保一劳永逸),且存在不少未公开API的调用,基于...
第7章 我要彩色照片——SWING的基本概念 141 7.1 讲解 142 7.1.1 Swing的基本概念 142 7.1.2 Swing组件继承关系 142 7.1.3 Swing组件一览 143 7.1.4 Swing和MVC设计模式 144 7.1.5 Swing的单线程模型 145 7.2...
第7章 我要彩色照片——SWING的基本概念 141 7.1 讲解 142 7.1.1 Swing的基本概念 142 7.1.2 Swing组件继承关系 142 7.1.3 Swing组件一览 143 7.1.4 Swing和MVC设计模式 144 7.1.5 Swing的单线程模型 145 7.2...
1.4.2 基本功训练2——提取path变量值创建新环境变量 17 1.4.3 基本功训练3——输出字符表情 17 1.4.4 基本功训练4——输出“*”字符组成的三角形 18 1.5 情景应用——拓展与实践 19 1.5.1 情景应用1——计算两...
14.3 知识点扩展——从AWT到Swing的过渡 14.3.1 窗口类JFrame 14.3.2 按钮类JButton和面板类JLabel 14.3.3 单选按钮和复选框组件 14.3.4 选择框组件 14.3.5 输入框组件 14.4 小结 第15章 控制动画项目 (JSlider和...
第2章 基本数据类型——构建Java 大厦的基础 12 2.1 源代码注释 12 2.1.1 单行注释 12 2.1.2 区域注释 12 2.1.3 文档注释 13 2.2 基本数据类型 14 2.2.1 整型 15 2.2.2 浮点型 17 2.2.3 char型 17...
该页面用到了专题咨询里面的主框架结构,和部分代码。 queryfailed.jsp——当查询失败时所连接到的界面 addtrain.jsp——管理员添加火车信息时的页面 adderror.jsp——用户点击添加火车信息时产生的错误界面 ...
3.4 小结:基本数据类型—— Java中一切数据和运算的基础 63 3.5 习题 65 第4章 Java中的程序执行流程 67 教学视频:1小时57分钟 4.1 顺序执行 67 4.2 使用if-else让程序懂得判断 68 4.2.1 if语句 68 4.2.2 ...
3.4 小结:基本数据类型—— Java中一切数据和运算的基础 63 3.5 习题 65 第4章 Java中的程序执行流程 67 教学视频:1小时57分钟 4.1 顺序执行 67 4.2 使用if-else让程序懂得判断 68 4.2.1 if语句 68 4.2.2 ...
Dispatchers对象,带有Android/Swing/JavaFx 的主调度程序(运行时需要相应的工件)和 Darwin(开箱即用),以及后台协程的默认调度程序; 延迟和产生顶级挂起函数; Flow——带有流生成器和综合操作符集(filter、...
要了解面向对象编程(OOP)的基本概念,需要理解 OOP 的三个主要概念,它们撑起 了整个 OOP 的框架。这三个概念是:封装、继承性和多态性。除此以外,还需了解对象、 类、消息、接口、及抽象等概念。 2.2.1 ...
2.5.1三种基本控制结构58 2.5.2表达式语句和空语句59 2.5.3块语句60 2.5.4if~else分支语句61 2.5.5多路分支switch~case语句69 2.5.6当型循环while语句71 2.5.7直到型循环do~while语句72 2.5.8当型循环for...
第14章 JSF——类Swing的Web开发框架 202 14.1 JSF基础 202 14.2 实例——JSF处理用户登录 209 14.3 小结 215 第15章 利用JavaMail收发电子邮件 217 15.1 电子邮件协议和JavaMail 217 15.2 JavaMail核心...