文档中心

控件开发_复杂数据模型和显示

01.概述

在实际界面程序的开发中,经常面临这样的需求:有大量的复杂数据需要呈现出来,如显示一个目录下的所有文件信息。常见做法是开发者通过系统调用获取文件信息,并转换成自己设计的数据结构;然后遍历数据结构,创建按钮或标签来堆砌显示内容,并且需要自己来解决以下问题:

1).数据发生变化时(添加、删除、修改),修改相应的显示控件。

2).数据很多时,需要滚动局域,考虑到性能上的优化,看不到的数据不应该创建相应的显示控件;

3).数据的呈现往往有不同的排版布局要求,如一个目录下的所有文件可以通过列表的形式查看,也可以通过图标的形式查看,并且显示的外观(字体大小、颜色)需要灵活配置。

耗时耗力完成上述需求的代码后,当有一种新的复杂数据需要显示时,却发现这些代码不能直接复用,因为在源代码中定义的数据结构只是针对文件信息的,数据结构中的成员名称不合适,可能需要添加数据成员,甚至多个数据结构之间的关系都需要调整,必须把之前的工作再做一遍乃至多遍。

考虑到上述问题,TD控件系统提供了如下的实现方式:

1).设计了一种通用的数据模型,在大部分应用场景中,复杂数据都能够简单高效的转换成该数据模型。

2).提供了智能排版和显示复杂数据模型的控件,让开发者只专注于数据本身的维护,而不需要操心数据是如何呈现,并且数据显示的排版和外观都可以在程序外灵活配置。