Bog*_*atu 5 browser delphi banner webbrowser-control delphi-xe2
我的应用程序显示从TWebBrowser控件中的Web加载的小横幅.这个横幅实际上是一个包含图像的HTML页面; 当用户点击图片时,它会将他们带到我们当前正在运行的促销活动中.
这里的坏处是,当点击TWebBrowser中的链接时,活动页面将在Internet Explorer中打开,而不是在默认浏览器中打开.我知道这TWebBrowser是因为是一个基于IE的控件,但有没有办法在用户的浏览器中打开链接?
谢谢.
在这种情况OnBeforeNavigate2下,请检查请求的URL,如果它是您要启动的URL,则Stop()检查当前导航并调用ShellExecute()以在用户的默认外部浏览器中启动URL.
procedure TForm1.WebBrowser1BeforeNavigate2(Sender: TObject; pDisp: IDispatch; var URL: Variant; var Flags: Variant; var TargetFrameName: Variant; var PostData: Variant; var Headers: Variant; var Cancel: WordBool);
begin
if (URL should be launched) then
begin
Cancel := True;
WebBrowser1.Stop;
ShellExecute(0, nil, PChar(String(Url)), nil, nil, SW_SHOWNORMAL);
end;
end;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7777 次 |
| 最近记录: |