MFC对话框工程,在页面上加载web网页(HTML),用什么控件加载比较好?加载过程中会与网页进行一些交互,比如获取HTML一个属性值、调用js函数等。我现在用的webbrowser2,但是:
1. 判断是否加载完
2. 调用js函数
3. 获取HTML中的一些属性值
等操作比较费劲。
腾讯手机助手、豌豆荚他们是用什么加载网页的?对话框加载网页
1. 判断是否加载完
2. 调用js函数
3. 获取HTML中的一些属性值
等操作比较费劲。
腾讯手机助手、豌豆荚他们是用什么加载网页的?对话框加载网页
解决方案 »
- 如何将0x123456变成0xFF123456??
- 求助 - windows如何枚举所有占用特定盘(如U盘(F:\))的所有句柄和进程?
- 在vc中加载msado15.dll文件出错
- 急,急,急,急,我写的一个程序,在2000 pro下会当机并弹出当机框,事件日志可以找到错误日志,在2000 server下却直接退出程序,不弹出
- 如何封闭网卡
- 【问】怎样定制appwizard?不在projects中,就加在files里
- 为何中文显示为乱码???
- 怎样自定义文件类型?
- msdn
- 学了不久的c语言,不知这个程序怎么弄,求助!!!谢谢
- idl文件当中定义的helpstring等属性,如何在客户端显示出来?
- mfc为什么动态创建的按钮坐标不变,位置却变了,该怎么处理呢
网页是否加载完:在CHtmlView::OnDocumentComplete里判断。
获取HTML属性:CHtmlView::GetHtmlDocument得到IHTMLDocument2等接口指针。借助ATL中的智能指针来管理这些接口指针,用起来也会方便很多。
调用js函数:CHtmlView::GetHtmlDocument得到IHTMLDocument后调用IHTMLDocument::get_Script()得到一个用来调用JS函数的LPDISPATCH调度接口。
用ATL的CComDispatchDriver来管理这个LPDISPATCH。然后用CComDispatchDriver的Invoke0(),Invoke1(),Invoke2(),Invoke3()。方便的调用JS函数。如果还想操作更简单的话,建议在C#下使用webbrowser,那里有更多的封装。