从CHtmlEditView获取文本

时间:2016-09-26 14:29:52

标签: mfc

我正在使用CHtmlEditView类进行编辑控制。我想在编辑控件中写入文本。 GetWindowText()返回一个空字符串。不确定它是否支持但也没有给我任何警告。我尝试了IHTMLDocument2接口来获取文本。我收到的文字是html格式(用<body>写的文字)。所以我不知道如何只从CHtmlEditView控件获取文本。我已经浏览了CHtmlEditView及其基类的API列表,但我没有得到任何东西。任何人都可以知道如何从CHtmlEditView获取文本吗?

1 个答案:

答案 0 :(得分:2)

IHTMLElement::innerText

  

设置或检索文本的开始和结束标记之间的文本   对象

示例:

CHtmlEditView html_edit;
// or CHtmlEditCtrl html_edit;
...

CString getPlainText()
{
    CComPtr<IHTMLDocument2> doc2;
    html_edit.GetDHtmlDocument(&doc2);

    CComPtr<IHTMLElement> element;
    doc2->get_body(&element);

    CComBSTR bstr;
    element->get_innerText(&bstr);
    CString text = bstr;
    return text;
}