(高手进)MFC中对话框里的编辑框 怎么实现获取鼠标选中的内容?

我知道在文档应用程序中可以用Getselectedtext()那么在对话框的编辑框里呢?我试了CWnd*pWnd=GetDlgItem(IDC_EDIT_Neirong)... 我知道在文档应用程序中可以用Getselectedtext() 那么在对话框的编辑框里呢?
我试了
CWnd* pWnd = GetDlgItem(IDC_EDIT_Neirong);
pWnd->GetWindowText(str);
if (!str.IsEmpty())
MessageBox(str);
m_changdu=strlen(str);
UpdateData(FALSE);
但是只是得到的是编辑框的全部内容, 怎么得到鼠标选中的呢?
zyq_07_28
正解 谢谢大家了。
不过有没有直接像 Getselectedtext() 这样的函数直接用呢 不用分析的
展开
 我来答
java_2009
2010-01-06 · TA获得超过310个赞
知道小有建树答主
回答量:196
采纳率:0%
帮助的人:0
展开全部
使用GetWindowText函数。
下面是一段示例程序:
CWnd* pWnd = GetDlgItem(IDC_EDITNAME);
pWnd->SetWindowText(_T("Gerald Samper"));
pWnd->GetWindowText(sz, 10);
希望对你有帮助。
如果你鼠标选中内容的话,可以获取鼠标的焦点对应控件的ID
-----------------------------------
你用的编辑框,代码是这样的,可以得出内容。
void CDlgTestDlg::OnButton()
{
// TODO: Add your control notification handler code here
CString cstr;
GetDlgItem(IDC_EDIT)->GetWindowText(cstr);//IDC_EDIT是你编辑框的ID
MessageBox(cstr);
}

参考资料: MSDN

zyq_07_28
2010-01-06 · TA获得超过258个赞
知道小有建树答主
回答量:185
采纳率:0%
帮助的人:0
展开全部
int start, end;
/////////////////这句获取鼠标选中的位置///////////////////////////////
m_edit.GetSel(start, end);
////////////////////////在做字符串分析////////////////////////////////
CString str;
m_edit.GetWindowText(str);
str = str.Right(str.GetLength() - start);
str.Truncate(end - start);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dy1570
2010-01-06 · 超过32用户采纳过TA的回答
知道答主
回答量:183
采纳率:0%
帮助的人:112万
展开全部
ctra + l 全选 就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式