Duilib中使用webbrowser

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Duilib中使用webbrowser相关的知识,希望对你有一定的参考价值。

参考技术A CWebBrowserUI 使用
1.XML配置<WebBrowser name="my_webbrowser" delaycreate="false"/>
2.创建CWebBrowserEventHandler* m_pWebBrowserEventHandler对象
3.如果不需要滚动条则需要在

4.不想要边框则

5.如果不想要菜单则在

6.打开页面

C# WebBrowser控件使用整理

一、简介

WebBrowser 控件为 WebBrowser ActiveX 控件提供了托管包装。 托管包装使您可以在 Windows 窗体客户端应用程序中显示网页。 使用WebBrowser 控件,可以复制应用程序中的 Internet Explorer Web 浏览功能,还可以禁用默认的 Internet Explorer 功能,并将该控件用作简单的 HTML 文档查看器。 此外,可以使用该控件将基于 DHTML 的用户界面元素添加到窗体中,还可以隐瞒这些元素在 WebBrowser 控件中承载的事实。 通过这种方法,可以将 Web 控件和 Windows 窗体控件无缝地整合到一个应用程序中。

二、指定Webbrowser控件所使用IE内核版本

虽然电脑上安装了IE8或者更高版本的IE浏览器,但Webbrowser控件默认总是使用IE7内核兼容模式来显示网页内容,导致很多网页样式无法正常显示,例如IE7不兼容HTML5,解决方法是在注册表中为你的进程指定引用IE的版本号。

比如我的程序叫做a.exe

对于32位程序:
HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Internet Explorer\\MAIN\\FeatureControl\\FEATURE_BROWSER_EMULATION

对于64位程序:
HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Internet Explorer\\MAIN\\FeatureControl\\FEATURE_BROWSER_EMULATION

在对应的路径下添加你程序名字,如a.exe为名的value,DWORD值。

值选项:
11000(0×2af8)    IE11
10000(0×2710)    IE10
9999 (0x270F)     IE9 忽略html5
9000 (0×2328)    IE9
8888 (0x22B8)     IE8 忽略html5
8000 (0x1F40)     IE8
7000 (0x1B58)     IE7

三、其他使用整理

 

屏蔽脚本错误:

将WebBrowser控件ScriptErrorsSuppressed设置为True即可

 WebBrowser页面加载完毕之后,在页面中进行一些自动化操作的时候弹出框的自动点击(屏蔽)

复制代码
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
    //自动点击弹出确认或弹出提示
    IHTMLDocument2 vDocument = (IHTMLDocument2)webBrowser1.Document.DomDocument;
    vDocument.parentWindow.execScript("function confirm(str){return true;} ", "javascript"); //弹出确认
    vDocument.parentWindow.execScript("function alert(str){return true;} ", "javaScript");//弹出提示
    //下面是你的执行操作代码
}
复制代码

 打开本地网页文件

webBrowser1.Navigate(Application.StartupPath + @"\\Test.html");

 

更多:

C# Html网页生成图片解决方案1

网页中实现图片的毛玻璃效果

C#如何以管理员身份运行程序(转)

以上是关于Duilib中使用webbrowser的主要内容,如果未能解决你的问题,请参考以下文章

在VC6.0中能不能使用Duilib界面库呢?

如何拖动用duilib创建出来的窗口

win10运行中出现duilib加载资源失败,又没啥影响,是啥原因啊~~

使用Duilib做桌面应用总结

vc6.0下能使用duilib吗 如果能具体怎么配置

duilib控件与属性说明