我有一个 Win32 应用程序,它将 HTML 转换为图像而不显示控件。(我没有太多在 Win32 应用程序中使用 ActiveX 的经验)。
我按照这篇 MSDN 文章创建控件并调用:http Navigate()
: //msdn.microsoft.com/en-us/library/aa451946.aspx
当我需要转换图像时,我调用IViewObjec::Draw()
. 问题是即使我调用以下函数,控件也始终可见:
browser->put_Visible(VARIANT_FALSE); // browser is IWebBrowser2
当我进入代码时,我发现当我打电话时
mOleObject->DoVerb(OLEIVERB_INPLACEACTIVATE, NULL, mControlSite, 0, NULL, NULL)
控件立即变得可见。但从我从 MSDN 中可以看出,这OLEIVERB_INPLACEACTIVATE
意味着
在不显示最终用户需要更改对象行为或外观的工具(例如菜单和工具栏)的情况下激活对象。单击这样的对象会使其与容器协商其用户界面工具的显示。如果容器拒绝,则对象保持活动状态,但不显示其工具。
我有点迷茫,只想掩饰。