qt使用IE内核加载网页,然后怎么使用IHTMLDocument2改变网页元素内容

chentao19900828 2017-04-20 04:11:04
我开始是用QAxWidget控件加载网页。然后用QAxObject获取网页元素内容。但是出现了一个问题。有时候不能获取到元素指针。
然后在网上查找资料,发现好像使用IHTMLDocument2可以获取到元素。现在的问题是怎么使用IHTMLDocument2改变网页元素内容。比如向网页编辑框输入内容(就像登录csdn需要填写用户名密码)。
...全文
339 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chentao19900828 2017-08-25
  • 打赏
  • 举报
回复
@u012947254 我邮箱z18284578310@163.com
chentao19900828 2017-04-21
  • 打赏
  • 举报
回复
算了,自己来结贴 varIndex.vt=VT_UINT; varIndex.lVal=i; VariantInit(&var2); IDispatch * pDispatch; if(SUCCEEDED(objAllElement-> item(varIndex,var2, &pDispatch))) { if(SUCCEEDED(pDispatch-> QueryInterface(IID_IHTMLElement,(void**)&objElement))) { if(SUCCEEDED(objElement-> QueryInterface(IID_IHTMLInputTextElement,(void**)&pInputTextElement))) { BSTR strName = SysAllocString(userName.utf16()); //用户名 BSTR strPwd = SysAllocString(password.utf16()); //密码 BSTR type; //输入框类型 pInputTextElement-> get_type(&type);//获取输入框类型 QString strType((QChar*)type, wcslen(type)); strType = strType.toUpper(); if(strType == "EMAIL") { pInputTextElement-> put_value(strName);//设置文本框的值(用户名) bNameFill = true; } if(strType == "PASSWORD") { pInputTextElement-> put_value(strPwd);//设置文本框的值(密码) bPwdFill = true; }
chentao19900828 2017-04-21
  • 打赏
  • 举报
回复
唉,没人来。 来人啊。。。。来人。。。来。。。。人
chentao19900828 2017-04-20
  • 打赏
  • 举报
回复
varIndex.vt=VT_ARRAY; varIndex.pcVal = "ap_email"; VariantInit(&var2); IDispatch * pDispatch; hr = objAllElement->item(varIndex,var2,&pDispatch); if(FAILED(hr)) continue; IHTMLInputElement *pControl; hr = pDispatch->QueryInterface(IID_IHTMLInputElement,(void**)&pControl); if(FAILED(hr)) continue; BSTR sName = SysAllocString(L"yonghu123"); pControl->put_value(sName); 我就是想把网页中的ap_email的值设为yonghu123,找不到正确的接口。好烦
slowlytalk 2017-04-20
  • 打赏
  • 举报
回复
这个属于C++和html的交互,找不到例子了。
chentao19900828 2017-04-20
  • 打赏
  • 举报
回复
大牛们,来救救我这迷途的羔羊啊
chentao19900828 2017-04-20
  • 打赏
  • 举报
回复
自己来打破零回复

16,203

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧