网易 新闻
微博
邮箱
相册
有道
摄影
闪电邮
手机邮
印像派
梦幻人生
更多 博客 手机博客
博客搬家
LiveWriter写博
Word写博
邮件写博
短信写博
群博客
博客油菜地
博客话题
博客热点
博客圈子
找朋友 发现小组风格 群博客召集令创建博客 登录 关注 显示下一条 | 关闭 往事随风; 胡言乱语,休得当真了
导航 首页 日志 相册 音乐 收藏 博友 关于我 日志 hdw802
加博友 关注他
最新日志
FLASH AS
学习资料收集整理(Delphi 中用 Xml 配置
文档生在DELPHI中用TreeView控件从经过实战验证后的14个精品指大盘零漂移图预测顶、底部的Delphi中DLL的消息处理该作者的其他文章
博主推荐
相关日志
随机阅读
首页推荐
日本青年与我身患绝症的表妹结婚台湾政客的娱乐圈攻略北京街头邂逅最牛潮男,惊爆眼球!云南山区小学留守儿童们的心愿实拍广州同性恋亲友会三周年庆典(图)杨恒均:我找到了对付越南的致命武器更多>>
对“推广广告”提建议
2009年8月24日 HGE 系列教材(1) --- 简介
Delphi ListView快速操作通用实现2009-09-21 02:47:44| 分类: 软件开发 阅读462 评论1 字号:大中小 订阅
众所周知,Delphi ListView类直接进行Add、Update、Delete操作的速度是比较慢的,尤其是当数据量较大时,比如数据量达到5000、10000、50000时,速度真是可以说是“慢得惊人”。其实快速操作的方法非常简单,就当大家都知道了。在本人的工作中,很多项目都用到ListView,并且对速度的响应要求比较高,于是发生了快速操作ListView的代码散布于多个项目大量模块中的问题,并且,当界面层数据显示要求发生改变时,自然发生“重复性代码的通用问题”。考虑到对以前版本的兼容性问题,也一直没有引用第三方的成熟组件。鉴于:“程序中的重复代码最易引发问题,必须消除”的实践经验,自己设计了一个比较通用的解决此类问题的类结构。当然,远不是什么“通用框架”了(眼下市面上很多人喜欢把自己做的无论什么东西通称为框架)。在采用此结构的项目中,很容易实现MVC模式,达到业务逻辑与界面显示分离的低级的、基础的要求。
Delphi ListView快速操作通用实现
作者:成晓旭
众所周知,Delphi ListView类直接进行Add、Update、Delete操作的速度是比较慢的,尤其是当数据量较大时,比如数据量达到5000、10000、50000时,速度真是可以说是“慢得惊人”。其实快速操作的方法非常简单,就当大家都知道了。在本人的
工作中,很多项目都用到ListView,并且对速度的响应要求比较高,于是发生了快速操作ListView的代码散布于多个项目大
量模块中的
问题,并且,当界面层数据显示要求发生改变时,自然发生“重复性代码的通用问题”。考虑到对以前版本的兼容性问题,也一直没有引用第三方的成熟组件。鉴于:“
程序中的重复代码最易引发问题,必须消除”的实践经验,自己
设计了一个比较通用的解决此类问题的类结构。当然,远不是什么“通用框架”了(眼下市面上很多人喜欢把自己做的无论什么东西通称为框架)。在采用此结构的项目中,很容易实现MVC模式,达到业务逻辑与界面显示分离的低级的、基础的要求。
(因为,目前CSDN的
软件上传功能不可用,我只有将部分代码片断放在
文档中,有需要完整源码者,请留言)
类层次结构:
ListView基础操作封装在LVControler包中,核心的类是TCXXLVControler:
(说明:LVControler类是被封装通用类结构内,外部用户是不需要了解和访问的,所以不作介绍。)
传统的ListView操作基类是TLVCommonClass,如果想用传统的方法增、删、改ListView中的数据,可以直接从此类继承。
源码如下:
具体的一个从此类继承下来的用于Socket界面显示的TLVSocket的类Overvivw如下:
源码如下:
快速的ListView操作基类是TLVQuickClass,如果