-1

ここに ceflib.pas コード CEFLIB.PASがあります


したがって、TCefRenderProcessHandlerOwnクラスでは、OnBeforeNavigation関数を宣言します。
ご覧のとおり、毎回 False を返しますが、リンクが開かれた場合MouseWheelClick、新しいタブでこのリンクが開かれないため、修正したいと思います。
問題は、この関数をどのように書き直すかです。
TNX

4

1 に答える 1

2

このライブラリを使用したことはありませんが、次のことを行う必要があるようです。

  1. から派生するクラスを定義しTCefRenderProcessHandlerOwnます。
  2. カスタマイズしたいメソッドをオーバーライドします。この場合OnBeforeNavigation
  3. 初期化時に、クラスをインスタンス化し、それをCefRenderProcessHandlerグローバル変数に割り当てます。

 

type 
  TMyRenderProcessHandler = class(TCefRenderProcessHandlerOwn)
  protected
    function OnBeforeNavigation(const browser: ICefBrowser; 
      const frame: ICefFrame; const request: ICefRequest; 
      navigationType: TCefNavigationType; isRedirect: Boolean): Boolean;
      override;
  end;

function TMyRenderProcessHandler.OnBeforeNavigation(const browser: ICefBrowser; 
  const frame: ICefFrame; const request: ICefRequest; 
  navigationType: TCefNavigationType; isRedirect: Boolean): Boolean;
begin
  .... your code goes here
end;      

initialization
  CefRenderProcessHandler := TMyRenderProcessHandler.Create;

プロジェクトには、この手法を説明するデモ プログラムが付属しています。これらのデモを調べて、この非常に強力なコンポーネントについて詳しく知ることをお勧めします。

于 2013-08-06T14:43:23.010 に答える