Thema: Delphi Link in Delphi einbauen!

Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3
  Alt 5. Apr 2003, 03:55
Du mußt dein Label durch ein TStaticText ersetzen, da ich das Handle brauche und TLabel ist von TGraficControl abgeleitet und nicht von TWinControl und besitzt somit kein Handle. Es unterscheidet sich in der Handhabung aber nicht von einem TLabel.
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    StaticText1: TStaticText;
  private
    { Private-Deklarationen }
    procedure CMMOUSEENTER(var msg: TMessage); message CM_MOUSEENTER;
    procedure CMMOUSELEAVE(var msg: TMessage); message CM_MOUSELEAVE;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.CMMOUSEENTER(var msg: TMessage);
var
  pt : TPoint;
begin
  GetCursorPos(pt);
  if WindowFromPoint(pt) = StaticText1.Handle then
  begin
    StaticText1.Font.Color := clBlue;
    StaticText1.Font.Style := [fsUnderline];
  end;
end;

procedure TForm1.CMMOUSELEAVE(var msg: TMessage);
var
  pt : TPoint;
begin
  GetCursorPos(pt);
  if WindowFromPoint(pt) <> StaticText1.Handle then
  begin
    StaticText1.Font.Color := clBlack;
    StaticText1.Font.Style := [];
  end;
end;
Warum einfach, wenn es umstaändlich geht. Habe gerade gesehen ab D6 gibt es bei TLabel das Ereignis OnMouseEnter und OnMouseLeave. Brauchst du also nicht nachrüsten und kannst dein Label nehmen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat