Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   [Komponente] LinkLabel (https://www.delphipraxis.net/49381-%5Bkomponente%5D-linklabel.html)

turboPASCAL 10. Jul 2005 15:31


[Komponente] LinkLabel
 
Liste der Anhänge anzeigen (Anzahl: 1)
Bescheriebung:
LinkLabel, per Klick auf ein Label mit neuen Eigenschaften eine URL öffnen.

Komponente: LinkLabel

- alle Eigenschaften eines Labels
- property Url:String Url-Adresse
- property AskBeforeOpenURL: Boolean Vor dem öffnen des Links fragen
- property Hover: Boolean Eigenschaft(en) ändern wenn Maus über dem Label ist
- property HoverFontColor: TColor Hover Schrift Farbe
- property HoverFontStyle: TFontStyles Hover Schrift Stiel

Delphi-Quellcode:
type
  TLinkLabel = class(TLabel)
  private
    FUrl: string;
    FAsk: boolean;
    FHoverFontColor: TColor;
    FHoverFontStyle: TFontStyles;
    FHover: Boolean;
    //
    TmpColor: TColor;
    TmpStyle: TFontStyles;
    procedure OpenUrl(TheUrl: string);
  protected
    procedure OnMouseEnter; dynamic;
    procedure OnMouseLeave; dynamic;
    procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
    procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
  public
    constructor Create(Owner: TComponent); override;
    destructor Destroy; override;
    procedure Click; override;
  published
    property Url: string read FUrl write FUrl;
    property AskBeforeOpenURL: boolean read FAsk write FAsk;
    property Hover: Boolean read FHover write FHover;
    property HoverFontColor: TColor read FHoverFontColor write FHoverFontColor;
    property HoverFontStyle: TFontStyles read FHoverFontStyle write
      FHoverFontStyle;
  end;

procedure Register;

implementation
...

Jan 10. Jul 2005 16:04

Re: Komponente: LinkLabel
 
Hallo turboPascal!

Da fehlt meines Erachtens nach noch die visited und vielleicht active style Einstellung.
Ansonten ein guter Einfall das so als fertige Unit anzubieten, spart jede Menge Zeit.

Gruß
Jan

turboPASCAL 10. Jul 2005 16:06

Re: Komponente: LinkLabel
 
active style Einstellung ? Was das ?

jfheins 10. Jul 2005 16:10

Re: Komponente: LinkLabel
 
Wenn die Maustaste unten ist ;)

(Halt mal hier auf nem Link die maustaste gedrückt ... z.B. in deiner Sig.)

turboPASCAL 10. Jul 2005 16:13

Re: Komponente: LinkLabel
 
:gruebel: Achso, mal gucken ob ich's noch Einbaue.

stefan2005 11. Jul 2005 08:13

Re: Komponente: LinkLabel
 
hi,
schöne Unit !
sowas hab ich schon länger gesucht

cu,
stefan2005

Codewalker 20. Apr 2009 09:39

Re: [Komponente] LinkLabel
 
Ich suche eine solche Komponente, aber mit mehreren Links in einem Label. Im OnClick sollte man dann unterscheiden können, auf welchen Link geklickt wurde

Mithrandir 20. Apr 2009 09:45

Re: [Komponente] LinkLabel
 
Zitat:

Zitat von Codewalker
Ich suche eine solche Komponente, aber mit mehreren Links in einem Label. Im OnClick sollte man dann unterscheiden können, auf welchen Link geklickt wurde

Und warum reicht dir die Compo nicht untereinander platziert?

Codewalker 20. Apr 2009 09:46

Re: [Komponente] LinkLabel
 
Die Anzahl der Elemente kann stark variieren und in einem einzelnen Label hätte ich ja auch den WordWrap. Das ist insgesamt ressourcenschonender und wäre deutlich einfacher

Mithrandir 20. Apr 2009 09:53

Re: [Komponente] LinkLabel
 
Zitat:

Zitat von Codewalker
Die Anzahl der Elemente kann stark variieren und in einem einzelnen Label hätte ich ja auch den WordWrap. Das ist insgesamt ressourcenschonender und wäre deutlich einfacher

Also ich kenne so eine Komponente nicht. Eventuell müsstest du mal bei den JEDI gucken, ansonsten hast du zwei Möglichkeiten:
  • Komponente überarbeiten/selbst schreiben
    Die Komponente ist ja Open Source. Eventuell kannst du sie so überarbeiten, dass Sie statt eines Strings eine TStringList erwartet und entsprechend auch reagiert. //Edit: In dem Falle sollte man sie vielleicht lieber vom TRichEdit ableiten, denke ich... :gruebel:
  • Komponente dynamisch erzeugen
    Du erzeugst die Komponenten im Quelltext dynamisch, abhängig von der Anzahl der Links. Wäre in meinen Augen die einfachste Möglichkeit.

Gruß,
Daniel


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:36 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz