Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hansa,
2. Feb 2006
jaja, aber der thread ist noch lange nicht beendet. :lol: Wie lautet denn die Antwort auf letzte aufgetauchte Frage ? Wem nützt ein Auseinanderreißen der Frage ? :mrgreen:
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hansa,
2. Feb 2006
Wieso kriege ich hier :
TLabel (FindComponent (lblKomp.Name)).Canvas.Brush.Color := clRed;
TLabel (FindComponent (lblKomp.Name)).Font.Color := clBlue;
zwar den Font geändert, die Hintergrundfarbe aber nicht ?
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hansa,
2. Feb 2006
Helmi, das war schon mal richtig so. :-D Allerdings wird das Event 2mal ausgelöst. Das läßt sich aber leicht so beseitigen (inspired by Ch. Seehase) :
procedure Tfrm.lblMouseEnter(Sender: TObject);
begin
inherited;
// if ControlAtPos(Point (x,y),true,true) is TLabel then
showmessage ('Label');
end;
Mal sehen, ob ich das MouseLeave auch noch brauche. Allerdings wäre es noch gut,...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hansa,
2. Feb 2006
Die Vorschläge haben bisher nicht viel genützt :
procedure Tfrm.FormMouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
// inherited;
i := i + 1;
if ControlAtPos(Point (x,y),true,true) is TLabel then
Memo1.Lines.Add (IntToStr (i)+' Label')
else
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hansa,
2. Feb 2006
Christian, das würde bedeuten, sämtliche Labels umzubauen. :shock: Ich muß die auch schon zur Designzeit rumschieben können. Was ist denn hierdran verkehrt :
procedure Tfrm.FormMouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
inherited;
i := i + 1;
if ControlAtPos(Point (x,y),true,true) = TLabel (Sender) then
Memo1.Lines.Add (IntToStr (i)+' Label')
...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hansa,
1. Feb 2006
Doch. :mrgreen: Befindet sich die Maus über einem Label, dann soll das anders aussehen, als wie normal. Bei der Sache geht es allerdings nur um max. 10 Labels.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hansa,
1. Feb 2006
Das ControlAtPos hört sich gut an. Nur bringt so was :
procedure Tfrm.FormMouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
inherited;
if ControlAtPos(Point (x,y),false) = TLabel (Self) then
showmessage ('asdsaf');
end;
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hansa,
1. Feb 2006
Hi,
es geht um Mauspositionen. Wie und wo kann man auswerten, ob sich der Mauszeiger über einem Label befindet ?