- Code: Select all
procedure TForm1.FormCreate(Sender: TObject);
begin
// définir son propre protocol
protocolString := 'delphi:';
// naviguer vers le fichier test.htm dans le répertoire de l'application
WebBrowser1.Navigate(ExtractFilePath(Application.ExeName)+'test.htm');
end;
procedure TForm1.WebBrowser1BeforeNavigate2(Sender: TObject;
const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
Headers: OleVariant; var Cancel: WordBool);
begin
// verifier si le protocol se trouve dans le lien
if( Pos(protocolString, URL) > 0 )then
begin
Cancel := True; // annule le changement de page
html_command( copy(URL,Length(protocolString)+1,Length(URL)-Length(protocolString)+1) );// extrait le lien sans le protocol
end;
end;
procedure TForm1.html_command(command: String);
begin
if( command = 'application_minimize')then
Application.Minimize
else if( command = 'application_terminate')then
Application.Terminate
else
ShowMessage('invoked: '+command);
end;
exemple de fichier html chargé dans le Webrowser
- Code: Select all
<HTML>
<STYLE>
A{font:9px Verdana;color: black;text-decoration: none;}
</STYLE>
<BODY>
<A HREF="http://www.delphifr.com/">Aller sur Delphifr</A><BR>
<A HREF="http://www.yahoo.co.jp">Aller sur Yahoo Japonais</A><BR>
<BR>
<A HREF="delphi:application_minimize">Minimiser</A><BR>
<A HREF="delphi:application_terminate">Quitter</A><BR>
</BODY>
</HTML>
