Mettre un lien [Résolu]

Signaler
Messages postés
16
Date d'inscription
dimanche 12 septembre 2004
Statut
Membre
Dernière intervention
2 janvier 2005
-
Messages postés
16
Date d'inscription
dimanche 12 septembre 2004
Statut
Membre
Dernière intervention
2 janvier 2005
-
slt
je voudrai savoir si c possible de mettre des liens
exple: "c:\bdd\lettre.doc"
dans une application pour pouvoir ouvrir le fichier pointé avec l'application adequate

9 réponses

Messages postés
27
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
24 février 2005
1
oups je suis vraiment pas bien réveillé ce matin... bien sûr dans mon exemple juste ci dessus il faut mettre ... PChar(varstr) ... et non PChar(aide)... désolé pour cette erreur, il faudrait pouvoir prévisualiser les message :)
Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
7
Hello,

Ouais c'est possible tu utilises pour cela commande shellexecute.
exemple : ShellExecute(HInstance, nil, 'c:\UpdaterUserManual.pdf', nil, nil, SW_SHOWNORMAL);

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
13
Si tu veux mettre un lien dans un label, du genre liens internet, tu peux également mettre ce code :

uses ShellAPI;

procedure TForm1.Label1MouseEnter(Sender: TObject);
begin
Label3.Font.Color := clBlue;
Label3.Font.Style := [fsUnderline];
end;

procedure TForm1.Label1MouseLeave(Sender: TObject);
begin
Label3.Font.Color := clBlack;
Label3.Font.Style := [];
end;

procedure TForm1.Label1Click(Sender: TObject);
begin
ShellExecute(0,'open',PChar(NomDeL'applicationALancerOuSiteWeb),NIL,NIL,SW_SHOWNORMAL);
end;

Avec en plus le curseur 'crHandPoint' pour ton label...

Il existe aussi des compos qui permettent de faire ça simplement, mais ce code reste accessible à tout le monde :)

@+
Bonne Prog'
Nico

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)
Messages postés
27
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
24 février 2005
1
Oui en utilisant ShellExecute voici un exemple:

procedure ....
var aide : string;

begin
     aide := Repertoire.Repencours + '\Help\Utilization\English.htm';
     ShellExecute(0, 'open', PChar(aide), Nil, Nil, SW_SHOWNORMAL);


il faut ajouter l'unité "shellapi"

uses shellapi;


@lex
Messages postés
27
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
24 février 2005
1
uses ShellApi;

procedure ouvre_fichier;
var 
varstr: string;

begin

varstr:= 'c:\Aide.htm';
ShellExecute(0, 'open', PChar(aide), Nil, Nil, SW_SHOWNORMAL);

end;
Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
7
Désolé cupracing j'ai posté en meme temps que toi.

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
7
Pour complété le code NI69 si je peux me permettre :

Si tu as plusieurs label tu peux ne faire que deux procedures générales Pour quand le souris passe ou non dessus :

procedure TForm1.Label1MouseEnter(Sender: TObject);
begin
(Sender As TLabel).Font.Color := clBlue;
(Sender As TLabel).Font.Style := [fsUnderline];
end;

procedure TForm1.Label1MouseLeave(Sender: TObject);
begin
(Sender As TLabel).Font.Color := clBlack;
(Sender As TLabel).Font.Style := [];
end;


Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
13
Merci d'avoir apporté cette précision jmp77 :)

@+
Bonne Prog'
Nico

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)
Messages postés
16
Date d'inscription
dimanche 12 septembre 2004
Statut
Membre
Dernière intervention
2 janvier 2005

merci à tous !!!!!!