MFC的Edit控件把光标移到末尾,VS2010能用

电脑是XP+VS2010,网上的代码都要修改才能用。估计是C++的规范一直在变。新版本MFC的参数结构有改变。

  m_EditRecv是EDIT框的变量。
    

m_EditRecv += str;           //接收到编辑框里面
UpdateData(false);              //将数据在屏幕中对应控件中显示出来。

本身在UpdateData(false)后,编辑框得到了更新,但是光标在开头,于是接着增加了以下三行。

long len=m_EditRecv.GetLength();
((CEdit*)GetDlgItem(IDC_EDIT_Recv))->SetSel(len,len,false);
((CEdit*)GetDlgItem(IDC_EDIT_Recv))->SetFocus();

即可。

这里参考了

参考1:https://blog.csdn.net/wwkaven/article/details/39718003

参考2:https://blog.csdn.net/eqiang8271/article/details/18076653

参考3:https://bbs.csdn.net/topics/390679242

猜你喜欢

转载自blog.csdn.net/qq_27158179/article/details/81568092
今日推荐