获取 IE 输入框中编辑光标所在行的内容
RT ,本人想获取IE输入框(textinput、textarea)中编辑光标所在行的内容,不知道如何获取,下面代码是 获取光标所在位置前一个字符,把 CComBSTR(L"character") 改成 CComBSTR(L"sentence") 获取不到想要的 指定行内容。
对于DOM 不是很明白,希望大家能帮忙说下做法或者是意见,非常感谢!
#include <MsHTML.h>
#include <Mshtmlc.h>
IHTMLWindow2* spWin=NULL;
m_spIsp->QueryService(IID_IHTMLWindow2, IID_IHTMLWindow2, (void**)&spWin);
CComPtr < IHTMLDocument2 > spDoc;
spWin->get_document(&spDoc);
CComPtr < IHTMLSelectionObject > spSel;
spDoc->get_selection(&spSel);
CComPtr < IHTMLElement > spEle;
spDoc->get_activeElement(&spEle);
CComPtr <IDispatch> spDisp;
spSel->createRange(&spDisp);
CComQIPtr <IHTMLTxtRange> spTxtRange = spDisp;
long lActMove;
spTxtRange->moveStart(CComBSTR(L"character"),-1,&lActMove);
spTxtRange->moveEnd(CComBSTR(L"character"),0,&lActMove);
// 获取到当前光标位置的前一个字符
CComBSTR bInputText;
spTxtRange->get_text(&bInputText);
OutputDebugString(bInputText);
OutputDebugString(_T("\n"));