- 1、本文档共24页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Eclipse从入门到精通(第二版)_ch14
第 章 表格(
1 4 T a b l e V i e w e r
类)
TableViewer 表格类是 JFace 组件中重要且典型的一个组件,其中涉及了 JFace 的众多
重要概念:内容器、标签器、过滤器、排序器和修改器,这些概念对后面 JFace 组件特别是
TreeViewer 的学习非常重要。从本章也可以体会到JFace 非常突出的面向对象特性。
14.1 概 述
JFace 是 SWT 的扩展,它提供了一组功能强大的界面组件,其中包含表格、树、列表、
对话框、向导对话框等,从本章之后就开始专门来介绍这些 JFace 组件。
表格是一种在软件系统很常见的数据表现形式,特别是基于数据库的应用系统,表格
更是不可缺少的界面组件。SWT 的表格组件(Table 类)前面已经介绍过了,但在实际项目
开发中一般还是用 JFace 的表格组件 TableViewer 比较多。TableViewer 组件是在 SWT 的
Table 组件基础上采用 MVC 模式扩展而来的,但 Table 并非 TableViewer 的父类,从图 14.1
两个类的谱系图就可以看出这两个类不属于同一族系。
从下面的 TableViewer 类源代码可以看到,TableViewer 把 Table 作为一个实例变量,
从而实现了对 Table 功能的扩展。
public class TableViewer extends StructuredViewer {
private TableViewerImpl tableViewerImpl;
private Table table; //把 Table 类作为一个实例变量
private TableEditor tableEditor;
……
}
本章就如何使用表格组件 TableViewer 类来展开讲解,并通过一步步地创建一个完整的
表格应用实例来串起表格的知识点,实例的最后界面如图 14.2 所示。
·150 · Eclipse 从入门到精通(第 2 版)
图 14.1 谱系图 图 14.2 本章实例的最后界面
第 14 章 表格(TableViewer 类) ·151 ·
14.2 创建表格并显示数据
作为起步,本节将演示如何创建一个 TableViewer 对象,如何用 TableViewer 来显示数
据记录,实例运行效果如图 14.3 所示。
图 14.3 TableViewer 效果图
14.2.1 实例的数据模型介绍
本实例用 TableViewer 来显示一个数据表中的 3 条记录,每一条记录对应某一个人的基
本资料,记录有 5 个字段:ID 号(数值型)、姓名(字符型)、性别(布尔型)、年龄(数
值型)和记录建立时间(日期型)。
如何在程序中体现和操作这些数据记录呢?在过去,像 ASP 、PHP 这类面向过程的编
程模式,人们习惯了这样操作数据:从数据库中读取数据,并不对数据做任何封装,直接
将数据一条条地显示在表格中。
现在用 Java 这种面向对象的编程语言,应该用更规范的方式来操作数据:将数据库中
的记录看作一个数据对象,用一个类来表示它,数据表的字段写成类的实例变量,这样的
类在 Java 中叫做实体类(或称数据类)。EJB 和 Hibernate 的数据操作方式都是这样的。
数据库与表格显示之间加上了实体类,如此一来,以前的“数据表→表格显示”方式
就分成了两个步骤
文档评论(0)