如何在加载页面时为 IWebBrowser2 设置背景颜色?
How do I set a background colour for IWebBrowser2 whilst page is loading?
标题说明了一切……
我正在使用 IWebBrowser2
在我的应用程序中显示网页,但是,当我调用 IWebBrowser2::Navigate()
时,在加载目标页面时显示白色背景,这与配色方案冲突我的应用程序。
我尝试在调用 Navigate()
之前创建 "background.html" 和 pre-loading,但是当我导航到新的 URL 时,背景立即变为白色。
这是未经测试的:
- 隐藏浏览器window。我记得调用
ShowWindow(SW_HIDE)
是行不通的,因为浏览器控件在其 window 被隐藏时不执行任何操作。相反,您可以 MoveWindow()
在客户区之外有效地隐藏它,同时它仍然认为它是可见的。
- 在浏览器控件的父 window 中绘制自定义背景。
- 致电
IWebBrowser2::Navigate()
- 处理
NavigateComplete
事件,您再次向浏览器显示 window。它应该在不首先显示白色背景的情况下快速重绘自身。
标题说明了一切……
我正在使用 IWebBrowser2
在我的应用程序中显示网页,但是,当我调用 IWebBrowser2::Navigate()
时,在加载目标页面时显示白色背景,这与配色方案冲突我的应用程序。
我尝试在调用 Navigate()
之前创建 "background.html" 和 pre-loading,但是当我导航到新的 URL 时,背景立即变为白色。
这是未经测试的:
- 隐藏浏览器window。我记得调用
ShowWindow(SW_HIDE)
是行不通的,因为浏览器控件在其 window 被隐藏时不执行任何操作。相反,您可以MoveWindow()
在客户区之外有效地隐藏它,同时它仍然认为它是可见的。 - 在浏览器控件的父 window 中绘制自定义背景。
- 致电
IWebBrowser2::Navigate()
- 处理
NavigateComplete
事件,您再次向浏览器显示 window。它应该在不首先显示白色背景的情况下快速重绘自身。