• 全部
  • 问答

EVC CListCtrl 闪烁的问题

wqm_44944 2009-04-13 04:03:28
在定时器里 更新 CListCtrl里面的值,结果闪烁的特别厉害,谁见到过这中问题。如何解决的?请指教。
...全文
118 点赞 收藏 17
写回复
17 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
deligent2 2009-07-16
楼主是怎么解决的。能详细说说吗?我也遇到了与您同样的情况,在EVC4.2和EVC6.0中,在定时器中刷新ListCtrl控件,会出现闪烁,从上到下的闪烁。已经用了双缓冲(用了双缓冲后,闪烁是整个CListCtrl的内容闪烁,不是从上到下的闪烁,主要是因为双缓冲是整幅图片向屏幕输出),SetReDraw方法,仍不能解决问题。
回复
wqm_44944 2009-04-13
解决了谢谢!
回复
happypay 2009-04-13
那我就真不知道是什么问题了哦
回复
happypay 2009-04-13
那我就真不知道是什么问题了哦
回复
wqm_44944 2009-04-13
我把设置文本透明功能去掉后,还是没有效果。
回复
happypay 2009-04-13
我这个好像都没用到双缓存,滚动条用到了
回复
happypay 2009-04-13
ILD_TRANSPARENT你看有没有这个,draw的过程中如果系统不支持TRANSPARENT就去掉这个参数。
回复
wqm_44944 2009-04-13
双缓冲区代码你是怎么写的?
回复
happypay 2009-04-13
不过我的drawitem自己写的,遇到了一个小图标闪的问题,我的问题试系统不支持半透明,我设置了半透明造成了,好像就没其他的问题了
回复
happypay 2009-04-13
我上次的闪就是把这两个都用起来就好了SetRedraw和双缓存OnEraseBkgnd直接返回
回复
happypay 2009-04-13
在你m_List.SetItemText之前用SetRedraw(FALSE);
所有的设置完后用SetRedraw(TRUE);
回复
91program 2009-04-13
要重绘控件吧,用系统默认的Draw过程,难解决这个问题的
回复
wqm_44944 2009-04-13
先试的这个!
回复
happypay 2009-04-13
SetRedraw(FALSE);
SetRedraw(TRUE);
也试了啊?
回复
wqm_44944 2009-04-13
m_List.SetItemText(5,1,L"100000");
m_List.SetItemText(5,4,L"100000");

m_List.SetItemText(4,1,L"1");
m_List.SetItemText(4,4,L"2");

m_List.SetItemText(3,1,L"3");
m_List.SetItemText(3,4,L"4");

m_List.SetItemText(2,1,L"5");
m_List.SetItemText(2,4,L"6");

m_List.SetItemText(1,1,L"7");
m_List.SetItemText(1,4,L"8");
用这些命令刷新的界面。
回复
wqm_44944 2009-04-13
试了不管用!
回复
happypay 2009-04-13
你用了双缓存之类的去闪的没有啊?
再就是OnEraseBkgnd函数中不执行系统自带函数
直接返回
回复
相关推荐
发帖
嵌入开发(WinCE)
创建于2007-09-28

1.9w+

社区成员

硬件/嵌入开发 嵌入开发(WinCE)
申请成为版主
帖子事件
创建了帖子
2009-04-13 04:03
社区公告
暂无公告