MFC EditBox控件滚动条保持在底部的实现

前言:在MFC编程中,在使用进度条的同时,需要用EDITBox将处理信息显示给用户。有的时候,信息太多,在处理的过程中,滚动条却一直保持在最上面,但我们想在处理的过程中,看到最新的处理结果,这就需要将Editbox控件的滚动条保持在底部。怎么实现呢?

 

1.新建一个MFC工程(基于单文档、多文档或对话框)。

2.插入对话框用于显示进度。该对话框中放置一个Editbox用于显示信息,id号为IDD_EditInfomation。

   注意:Editbox的属性里面记得勾选Miltiline、Vertical Scroll和Auto VScroll。

3.将该控件与变量关联,用它的Control里面的CEdit类。同时按下ctrl+W,打开对话框,为IDD_EditInfomation关联一个CEdit类型变量,为m_EditInfomation。

4.在输出的时候:

先定义一个CString类型的变量strInfo,将要输出的内容存在该变量中;

然后定义一个int类型变量position用来存储该EditBox的位置,用m_EditInfomation.GetSel();来获取;

然后在输出前用SetSel()对m_EditInfomation进行定位,随后将信息输出在该位置上

为了每次不把重复的内容输出,要先清空m_EditInformation.SetWindowText("");;

最后用m_EditInformation.ReplaceSelstrInfo(strInfo);来显示信息。

 

例:输出1-1000这1000个int数据

 CString strInfo="",str; 
 int positon=0; 
 for(int i=1;i<1001;i++)  
 {  
  str.Format("%d",i);  
  strInfo=strInfo+str+"\r\n";  
  positon=m_EditInformation.GetSel();  
  m_EditInformation.SetSel(positon);  
  m_EditInformation.SetWindowText("");  
  m_EditInformation.ReplaceSel(strInfo);
  UpdateData(false);  
 } 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值