- unit Unit1;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, StdCtrls, ShellApi;
- // atention ShellApi est indispensable dans la liste des uses
- type
- TForm1 = class(TForm)
- Label1: TLabel;
- procedure Label1Click(Sender: TObject);
- procedure Label1MouseEnter(Sender: TObject);
- procedure Label1MouseLeave(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
-
- var
- Form1: TForm1;
-
- implementation
-
- {$R *.dfm}
- // quand on clique sur le label
- procedure TForm1.Label1Click(Sender: TObject);
- begin
- // il suffit de lancer le naviguateur par défaut
- // du système d'exploitation vers le site désigné
- // par le label
- ShellExecute(Handle, 'OPEN', pchar(label1.caption),'','',SW_SHOWNORMAL);
- end;
- // quand la souris entre au dessus du label
- procedure TForm1.Label1MouseEnter(Sender: TObject);
- begin
- // je change de couleur de texte (ici c'est du bleu)
- Form1.Label1.Font.Color := clBlue;
- // ensuite je souligne le texte du label
- Form1.Label1.Font.Style := [fsUnderline];
- end;
- // puis quand la souris quitte le label
- procedure TForm1.Label1MouseLeave(Sender: TObject);
- begin
- // je revient à la couleur initiale
- Form1.Label1.Font.Color := clBlack;
- // et j'enleve les décorations
- Form1.Label1.Font.Style := [];
- end;
-
- end.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ShellApi;
// atention ShellApi est indispensable dans la liste des uses
type
TForm1 = class(TForm)
Label1: TLabel;
procedure Label1Click(Sender: TObject);
procedure Label1MouseEnter(Sender: TObject);
procedure Label1MouseLeave(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
// quand on clique sur le label
procedure TForm1.Label1Click(Sender: TObject);
begin
// il suffit de lancer le naviguateur par défaut
// du système d'exploitation vers le site désigné
// par le label
ShellExecute(Handle, 'OPEN', pchar(label1.caption),'','',SW_SHOWNORMAL);
end;
// quand la souris entre au dessus du label
procedure TForm1.Label1MouseEnter(Sender: TObject);
begin
// je change de couleur de texte (ici c'est du bleu)
Form1.Label1.Font.Color := clBlue;
// ensuite je souligne le texte du label
Form1.Label1.Font.Style := [fsUnderline];
end;
// puis quand la souris quitte le label
procedure TForm1.Label1MouseLeave(Sender: TObject);
begin
// je revient à la couleur initiale
Form1.Label1.Font.Color := clBlack;
// et j'enleve les décorations
Form1.Label1.Font.Style := [];
end;
end.