更新的TWebBrowser现在从一开始就实现了IDocUIHandler,如何继续使用我的自定义实现?

时间:2016-08-03 10:20:48

标签: delphi com ole twebbrowser shdocvw

从Delphi 10.0 Seattle开始,Embarcadero改变了TWebBrowser控件的实现:

前西雅图:TWebBrowser = class(TOleControl)

西雅图+:TWebBrowser = class(TOleControl, IDocHostUIHandler, IDocHostShowUI, IOleCommandTarget)

我运行了一些旧代码,我已经实现了一个类,可以注册为TWebBrowser的客户端站点/主机,我提供了自己的IDocHostUIHandler接口实现。

由于TWebBrowser现在正在从头开始实现这些(并将它们保密)并且很难从我知道的所有内容中继续下去 - 我该如何将新的TWebBrowser组件添加到重新注册查找IDocHostUIHandler的实施位置?

1 个答案:

答案 0 :(得分:6)

您可以从TWebBrowser下载并像以前一样提供您自己的接口定义,如下所示:

Type
  TMyWebBrower = class( TWebBrowser, IDocHostUIHandler )
  ...
  end;

这告诉Delphi您正在重新实现IDocHostUIHandler接口。您必须提供界面的所有功能,但您已经拥有该功能。