CEdit 控件的刷新问题

love_rong 2009-03-25 10:54:35
问题如下:
我重载了CEditView类,并实时的添加数据到CEdit上, 代码片段如下:

CEdit editCtrl = GetEditCtrl();

int len = editCtrl.GetWindowTextLength();

editCtrl.SetSel(len, len);

editCtrl.SelReplace(pszMsg); // pszMsg是传进来的TCHAR*类型参数

但是每次添加数据后控件会有一定的闪烁,还有一个问题就是数据不停的更新时,怎样使选中的内容一直保持选中状态?
...全文
346 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnzdgs 2009-03-26
  • 打赏
  • 举报
回复
有点闪烁是正常的,如果闪烁比较严重就有问题了。
可以在处理之前先GetSel,处理完后再SetSel,这样可以不改变选中的状态。
love_rong 2009-03-26
  • 打赏
  • 举报
回复
DavidHsing说的这种方法没有多大作用,我之前已经试过了..

我看过别人的一个软件,它在更新时一点闪烁都没有,而且选中的内容(蓝色背景)能一直保持,也不会闪烁。不知道是用什么机制实现的?
DavidHsing 2009-03-26
  • 打赏
  • 举报
回复
//加之前
editCtrl.SetRedraw(FLASE);

//....加Text

editCtrl.SetRedraw(TRUE);

15,979

社区成员

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

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