ListCtrl持续更新,如何获得某一行的内容没有更新?

FireBirdCN 2014-05-28 06:22:38
现在持续获取数据,N多条,显示在一个ListCtrl中,每一行显示一条,数据持续获得。
形如
A B 两列
A代表一条数据内容 B是该内容获得的次数
数据持续获得 B的内容 即次数一直在增加
此时我要获得 B的次数不再增加的那一行 , 然后颜色高亮显示出来

请问各位大神给指导下思路,好久没玩VC了,折腾了一天 也没搞出来。


CListCtrlEx::OnCustomDraw(NMHDR* pNMHDR_i, LRESULT* pResult_i)
使用自绘,也思路混乱了。。

求指点。



...全文
289 16 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
FireBirdCN 2014-06-03
  • 打赏
  • 举报
回复
引用 14 楼 worldy 的回复:
" B的次数不再增加的那一行"要怎么理解? 一条数据“anc”,现在正好增加的一次,后面有没有还不知道,那算不算不再增加?
也就是那条数据丢失了 , 在我填入Edit框的这个时间内,如果有那条数据又有了 就不算丢失 如果超过了这个时间 就算丢失 就要高亮显示了
FireBirdCN 2014-06-03
  • 打赏
  • 举报
回复
引用 3 楼 oyljerry 的回复:
先根据数据来处理,获得没更新的那一行,然后再高亮处理
。。。你跟写轮兔的ID 搞混了。。。
worldy 2014-06-03
  • 打赏
  • 举报
回复
" B的次数不再增加的那一行"要怎么理解? 一条数据“anc”,现在正好增加的一次,后面有没有还不知道,那算不算不再增加?
FireBirdCN 2014-06-03
  • 打赏
  • 举报
回复
引用 5 楼 schlafenhamster 的回复:
“B的次数不再增加的那一行” 缺个条件,多长时间内 “不再增加” ?
哦 这个时间要引出来 Edit填写的
FireBirdCN 2014-06-03
  • 打赏
  • 举报
回复
引用 5 楼 schlafenhamster 的回复:
“B的次数不再增加的那一行” 缺个条件,多长时间内 “不再增加” ?
不用加列,间隔的时间不用显示出来,自己在程序内部处理好了
FireBirdCN 2014-06-03
  • 打赏
  • 举报
回复
引用 4 楼 zwfgdlc 的回复:
试下这样,先把每一条都高亮,然后处理LVM_SETITEMTEXT消息,判断LVITEM.iSubItem是不是第二列,如果是就把这行取消高亮
这样会造成很严重的闪烁吧。。
HUSTYZHY 2014-06-03
  • 打赏
  • 举报
回复
三楼说的对。。
FireBirdCN 2014-06-03
  • 打赏
  • 举报
回复
引用 1 楼 healer_kx 的回复:
知道MVC 不?
目前没玩过 ,以后看看吧~~
FireBirdCN 2014-06-03
  • 打赏
  • 举报
回复
引用 3 楼 oyljerry 的回复:
先根据数据来处理,获得没更新的那一行,然后再高亮处理
感谢提供思路,现在就是这么干的 兔子党的写轮兔,果然也当上版主了~~~ 当年就觉得你很牛X~~
FireBirdCN 2014-06-03
  • 打赏
  • 举报
回复
引用 2 楼 happyparrot 的回复:
这个还是要靠实体类来判断。数量有变化则记录为有更新,同时记录更新的时间。定时判断每个数量是否超过指定的时间没有发生更新,将状态改为无更新。 列表显示时,根据这个状态进行处理。自绘时使用不同颜色表示。
现在基本就是按照这个思路搞的,但还是有点不完美 看过一个程序是用C++Builder写的 ,很简单,就在CustomDraw里面对每次单独一行更新时做了判断,其他行都不受影响,就按照那思路折腾了好久,VC里单独对一行更新的操作貌似不太好弄。。 PS.话说 鹦鹉大哥 头像依然如当前一样风骚啊~~~哈哈哈 当年也受过大哥指导 这么些年没搞过VC了 回来提问还是大哥最给力~
「已注销」 2014-05-30
  • 打赏
  • 举报
回复
首先楼主的处理函数是单独开的线程吧!, 每一次获取每一行的数据与之前的对比,如果没有变化 ,那就设置它为高亮
schlafenhamster 2014-05-30
  • 打赏
  • 举报
回复
“B的次数不再增加的那一行” 缺个条件,多长时间内 “不再增加” ?
zwfgdlc 2014-05-30
  • 打赏
  • 举报
回复
试下这样,先把每一条都高亮,然后处理LVM_SETITEMTEXT消息,判断LVITEM.iSubItem是不是第二列,如果是就把这行取消高亮
oyljerry 2014-05-30
  • 打赏
  • 举报
回复
先根据数据来处理,获得没更新的那一行,然后再高亮处理
快乐鹦鹉 2014-05-30
  • 打赏
  • 举报
回复
这个还是要靠实体类来判断。数量有变化则记录为有更新,同时记录更新的时间。定时判断每个数量是否超过指定的时间没有发生更新,将状态改为无更新。 列表显示时,根据这个状态进行处理。自绘时使用不同颜色表示。
healer_kx 2014-05-28
  • 打赏
  • 举报
回复
知道MVC 不?

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧