CSDN博客

img ssrs626

VC中edit控件的使用

发表于2008/9/28 16:24:00  1229人阅读

分类: C++ PROGRAM DEVELOPMENT

CString m_strEdit;
//获得edit框内容
UpdateData(TRUE);
此时m_strEdit就是edit框内容的字符串变量。
//要更新edit的话只要对m_strEdit进行赋值然后
UpdataData(FALSE);//即可


如果是一些对edit框的复杂操作建议用cedit类型。
示例:
CEdit m_ctrlEdit;

选中从第101个(从0开始索引号为100的字符)开始的50个字符,要防止滚动可以包含第3个参数并将其设置为TRUE

如果不可见 将所选内容滚动到视图中

m_ctrlEdit.SetSel(100,150);

m_ctrlEdit::ReplaceSel

可以在编辑控件中插入文本而不删除以有的内容,如果在调用ReplaceSel时一个或多个字符被选中

,插入的文本将取代被选中的文本,否则文本在当前插入位置出被插入.
//将光标移到开头
m_ctrlEdit.SetSel(0,0);
//将光标移到末尾
m_ctrlEdit.SetSel(-1);
//选中所有内容
m_ctrlEdit.SetSel(0,-1);
//写入值
m_ctrlEdit.ReplaceSel("替换内容");
//得到当前edit框中的所有字符数
int iStart,iCount;//iCount 为字符数
m_ctrlEdit.SetSel(0,-1);
m_ctrlEdit.GetSel(iStart,iCount);

还一种可以直接用控件的id值来进行操作
示例:
(CEdit*)GetDlgItem(IDC_EDIT)
他类似于上边的m_ctrlEdit
这样写的好处是可以在消息传递中使用,便于不同窗口间传递edit内容
例如:下面的消息响应函数中
SetEditContent(WPARAM wPARAM, LPARAM lPARAM)
IDC_EDIT可以通过wPARAM传递近来,而字符传内容可以直接通过lPARAM传递近来
CString Msg="要传递的消息";
::SendMessage(m_hParent,WM_SENDMSG_EDIT,(WPARAM) IDC_EDIT, (LPARAM)(LPSTR)(LPCTSTR)Msg)
如:
((CEdit*)GetDlgItem(wPARAM))->SetSel(-1);
((CEdit*)GetDlgItem(wPARAM))->ReplaceSel((LPCSTR)lPARAM);

0 0

相关博文

我的热门文章

img
取 消
img