Chinaunix首页 | 论坛 | 博客
  • 博客访问: 119337
  • 博文数量: 29
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 242
  • 用 户 组: 普通用户
  • 注册时间: 2014-07-17 13:36
文章分类

全部博文(29)

文章存档

2015年(29)

我的朋友

分类: C/C++

2015-05-27 09:47:56

CEdit中追加文本(原来文本不变)已经让滚动条始终在底部 

 

方法一:(效率不高)  

CString strTemp; 

 GetDlgItem(IDC_EDIT_OUTPUT)->GetWindowText(strTemp);  strTemp += strAppendText; 

 GetDlgItem(IDC_EDIT_OUTPUT)->SetWindowText(strTemp); 

 //滚动到顶部 SB_BOTTOM   滚动到底部 

 GetDlgItem(IDC_EDIT_OUTPUT)->SendMessage(WM_VSCROLL,SB_BOTTOM,0);  

(滚动条每次刷新都会先回到顶部,然后再到底部,如果刷新比较快,容易闪动

 

方法二:(效率高)

 CEdit  m_editOutPut; 

 int len = m_editOutPut.GetWindowTextLength(); 

 //将插入光标放在最后

 m_editOutPut.SetSel(len,len);              

m_editOutPut.ReplaceSel(strAppendText); 

 m_editOutPut.ScrollWindow(0,0);            

//滚动到插入点 (滚动条始终在底部,不闪动)

阅读(1120) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~