3

twebBrowser を含むアプリを作成しました。問題は、gmailなどのリンクをクリックすると、デフォルトのブラウザ(IE)の新しいウィンドウで開くことです。クリックしたリンクをウィンドウで開くFirefoxやChromeなどのように機能させるにはどうすればよいですか。URL は TWebBrowser のウィンドウで開く必要があります。そのために、実行時に TWebBrowser を含む新しいフォームを実行時に作成する必要がありますか? コード自体は必要ありません。アイデアで十分です。

前もって感謝します。

PS私の組織はGmail、Facebookなどをブロックしていますが、TWebBrowserを介して開くことができます。私のQA担当者はログでそれを見ることができますか? 彼らはそれをブロックするので、私の推測ではノーでしょう。これについてのあなたのコメントは何ですか

4

1 に答える 1

5

TWebBrowserイベントがありOnNewWindow2ます。TWebBrowserを保持するフォームの名前がForm1で、Web コントロール自体の名前が であると仮定すると、WebBrowser1次のようなハンドラーを記述します。

procedure TForm1.WebBrowser1NewWindow2(ASender: TObject; var ppDisp: IDispatch; var Cancel: WordBool);
var NF: TForm1;
begin
  NF := TForm1.Create(Application);
  NF.Visible := True;
  NF.WebBrowser1.RegisterAsBrowser;
  ppDisp := NF.WebBrowser1.DefaultInterface;
end;

これにより、新しいウィンドウが作成さTWebBrowserれ、「クリック」が新しいウィンドウにつながるはずのときに新しいウィンドウが作成されます。

于 2011-07-15T05:50:30.167 に答える