表格的数据量不是很大,比如,只有4行的时候
刷新时还是会有闪烁的现象,很奇怪
我觉得可能是删除的时候按我写的那个循环
for(i=0;i
DeleteItem(i);
}
变成每删除一个表格行就要刷一次屏幕,可能就是因为这样造成了闪烁
我要用这表格实现的功能是这样的
与服务器端通信,服务器每隔一定的时间间隔发送过来一个数据链表
客户端接收链表,解析后显示在表格里
这里就存在一个更新的问题,服务器的数据链表是动态变化的
而客户端这边的送显更新存在更新方式的问题
我原本想写个比较函数,比较下链表的不同,可是,这样的开销太大了
不仅是内存空间多花费,比较时间也是CPU开销啊
还不如直接删除原有item然后重新填充一下表格呢
昨天没有查MSDN,凭印象写了个DeleteItem(i)函数上去
今天查了下MSDN,原来还有个DeleteAllItems(),还不带参
一改下函数
果然不闪烁了
这才发现原来程序的世界里跟我们想的不同
越笨的方法可能越高效啊
谨记,谨记
No comments:
Post a Comment