![]() |
TFRame Events während der Laufzeit erzeugen
Hallo!
Ich habe eine Form welche auf ButtonClick während der Laufzeit ein Frame erzeugt und dieses mit Elementen befüllt. Das alles funktioniert einwandfrei! Ich hätte aber jetzt gerne auf einem erzeugten Label im Frame folgende Events: onclick + onmouseenter + onmouseleave; Der label wird folgendermassen erzeugt : framelabel[i] := TLabel.Create(Frame21); framelabel[i].Parent := Frame21; wie kann ich auf dieses im Frame während der Laufzeit erzeugten label die events onclick + onmouseenter + onmouseleave legen ? Meine Delphi Version ist 7.0! vielen Dank DeCi |
AW: TFRame Events während der Laufzeit erzeugen
Wenn die Controls im Frame selber erzeugt werden, dann sollte der Code so aussehen:
Delphi-Quellcode:
procedure TFrameX.foo;
var currentLabel: TLabel; begin currentLabel := TLabel.Create( Self ); // Self verwenden! currentLabel.Parent := Self; // Self verwenden! currentLabel.OnClick := ... end; |
AW: TFRame Events während der Laufzeit erzeugen
Super Danke funktioniert !
Manchmal sieht man den Wald vor lauter Bäumen nicht ;P Eine Frage hätte ich trotzdem noch ! Wie kann ich das Mausrad (mousewheel) im erzeugten Frame aktivieren damit ich mit der Maus scrollen kann ? DeCi |
AW: TFRame Events während der Laufzeit erzeugen
Ich habe da jetzt folgendes gefunden :
Code:
type
TMainForm = class(TForm) private procedure MouseWheelHandler(var AMessage: TMessage); override; public { Public declarations } end; implementation procedure TMainForm.MouseWheelHandler(var AMessage: TMessage); var Control: TWinControl; begin Control := FindVCLWindow(SmallPointToPoint(TWMMouseWheel(AMessage).Pos)); if Assigned(Control) then begin AMessage.Result := Control.Perform(CM_MOUSEWHEEL, AMessage.WParam, AMessage.LParam); if AMessage.Result = 0 then Control.DefaultHandler(AMessage); end else inherited MouseWheelHandler(AMessage); end; produziert aber leider einen Stackoverflow... |
AW: TFRame Events während der Laufzeit erzeugen
Und was hat das mit dem Thema zu tun?
|
AW: TFRame Events während der Laufzeit erzeugen
Ich hatte ja gerschrieben :
Eine Frage hätte ich trotzdem noch ! Wie kann ich das Mausrad (mousewheel) im erzeugten Frame aktivieren damit ich mit der Maus scrollen kann ? Sorry, soll ich einen neuen Beitrag dazu aufmachen ? |
AW: TFRame Events während der Laufzeit erzeugen
Ja, das wäre total lieb. Die Antworten hier im Forum dienen ja auch als Nachschlagewerk ud Dinge sind dann einfacher zu finden.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz