qt下使用webbrowser的问题

kamio_misuzu 2013-05-17 11:16:51
因为项目需要在qt下使用webrowser作为一个浏览器,但是就遇到一些问题:
1.怎么屏蔽掉js脚本错误提示?
2.怎么在同一实例中打开网页上的链接而不调用系统的浏览器?
3.屏蔽网页中右键菜单或右键菜单的功能?

之前在mfc中都成功过前两项,但是在qt中因为是使用QAxWidget加载的Activex方法调用webbrowser,所以不知道怎么下手,例如我尝试过这样(比较懒所以直接用ui文件生成了QAxWidget实例):
ui.axWidget->dynamicCall("put_Silent(VARIANT_BOOLbSilent)","VARIANT_TRUE");//禁止脚本错误提示
还有这样:
ui.axWidget->setProperty("ScriptErrorsSuppressed",true);//禁止脚本错误提示
都无法实现禁止js脚本错误提示,不知道是我使用的方式不对还是怎样?发现网上对这方面的资料很少,还望各位大大给点提议,谢谢。
...全文
331 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
kamio_misuzu 2013-10-24
  • 打赏
  • 举报
回复
引用 3 楼 zs0801 的回复:
怎么不直接用QWebView控件呢?
因为QWebView的内核不支持我所需要的访问的网页
jun5love 2013-09-17
  • 打赏
  • 举报
回复
怎么不直接用QWebView控件呢?
kamio_misuzu 2013-06-08
  • 打赏
  • 举报
回复
还是自己解决了。。。 ui.axWidget->setProperty("Silent",true);//通过禁止弹出对话框,禁止脚本错误提示。但是这会带来其他潜在问题 void ActiveWeb::on_axWidget_NewWindow3(IDispatch**, bool& Cancel, uint dwFlags, QString bstrUrlContext, QString bstrUrl);//重写NewWindow3实现在同一实例中打开网页 不得不吐槽一下之前被assistant里AxBase里的QAxBase transparently converts between COM data types and the equivalent Qt data types表所描述的转换给迷惑了。。。搞了很久在类型转换上。。。
kamio_misuzu 2013-05-17
  • 打赏
  • 举报
回复
坐等大神大侠

16,216

社区成员

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

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