Comment puis-je faire en sorte qu'un tlabel se comporte comme un hyperlien à Delphi?

StackOverflow https://stackoverflow.com/questions/1326452

  •  19-09-2019
  •  | 
  •  

Question

Comment puis-je faire en sorte qu'un tlabel se comporte comme un hyperlien à Delphi?

Remarque: je ne suis pas intéressé à utiliser TlinkLabel en raison de problèmes de compatibilité vers l'arrière.

Était-ce utile?

La solution

Colorez-le bleu, réglez le style pour souligner et ajoutez un événement OnClick!

procedure TForm1.Label1Click(Sender: TObject);
var
  MyLink: string;
begin
  MyLink := 'http://www.mysite.com/';
  ShellExecute(Application.Handle, PChar('open'), PChar(MyLink),    
   nil, nil, SW_SHOW);
end;

Autres conseils

Cela dépend de ce dont vous avez besoin de vos hyperliens. Je venais juste ...

  • Réglez la couleur de la police en bleu
  • Utilisez les événements OnMouse [Entrez | Leave | Move] pour appliquer de manière appropriée le style de soulignement à la police
  • Utilisez l'événement OnClick pour engendrer un navigateur et modifiez la couleur de la police, comme vous le souhaitez.

Quelle version de Delphi utilisez-vous? En regardant mon Delphi 4 IDE, Tlabel n'a pas d'événement OnMouseEnter / OnMouseleave, qui serait nécessaire pour changer le curseur en une "main" lorsque l'utilisateur plane sur le "lien".

Il a l'événement OnClick, que vous pouvez câbler pour lancer le navigateur Web de l'utilisateur:

Comment apporter le navigateur à l'avant ou à lancer à Delphi

On peut s'adapter et donner la mise au point aux liens dans un navigateur. Par conséquent, j'envisagerais d'utiliser un contrôle fenêtré (comme un TBUTTON tiré par le propriétaire) pour cette tâche.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top