![]() |
[Komp. Entwicklung] onResize bei abgeleiteter TImage K.
HiHo
Ich hab eine Komponente geschrieben die von TImage abgeleitet ist. Allerdings braucht sie noch ein internes onResize-Ereigniss. Ich hab deshalb auch in den Private (soll ja intern sein) folgendes eingefügt:
Delphi-Quellcode:
Und mein Createkonstruktor (oder wie nennt man das?) sieht so aus:
procedure TVerHorLabelResize(Sender: TObject);
property onResize;
Delphi-Quellcode:
Leider kommt dann beim Debuggen ein
constructor TVerHorLabel.Create(AOwner: TComponent);
begin inherited; OnResize := VerHorLabelResize(self); end; Debuggererror: [Fehler] VerHorLabel.pas(56): Inkompatible Typen: 'TNotifyEvent' und 'procedure, untyped pointer or untyped parameter' Wo liegt der Fehler und wie behebe ich ihn? [edit=sakura] Titel einfach zuuuuuu lang ;) Mfg, sakura[/edit] |
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
Obbschtkuche hat mir geholfen.
Lösung:
Delphi-Quellcode:
procedure TVerHorLabel.Resize(Sender: TObject);
begin irgendwas; end; constructor TVerHorLabel.Create(AOwner: TComponent); begin inherited; OnResize := Resize; end; |
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
Die Lösung finde ich persönlich nicht gelungen. Eher solch einen Ansatz:
Delphi-Quellcode:
...:cat:...
type
TImage1 = class(TImage) private protected procedure Resize; override; public published end; {...} procedure TImage1.Resize; begin inherited Resize; // Dein Code fürs Resize end; |
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
Japp, das ist schöner. Mach ich auch gleich
Thx sakura :cat: |
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
Zitat:
...:cat:... |
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
Nicht wenn ich es in Private tu :zwinker:
|
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
doch, auch wenn tu es in Privte tust, oder meinst du wenn du das event dort hinn verschiebst? Ich überschreib in aller Regel SetBounds aber das kommt so ziemlich aufs gleiche raus nur das ich noch mitbekomme wenn die Position sich ändert.
|
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
Wenn ich das Event in Private tu taucht es nicht im OI auf. TImage hat von Haus aus kein OnResize...
|
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
Zitat:
...:cat:... |
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
Zitat:
|
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
Zitat:
|
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
ICQ-Logs: 17:04:17 obbschtkuche: procedure TVerHorLabel.Resize(Sender: TObject); begin end; constructor TVerHorLabel.Create(AOwner: TComponent); begin inherited; OnResize := Resize; end; 17:04:22 obbschtkuche: so stimmts |
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
ICQ-Logs: (17:00:15) obbschtkuche: aber so sollte man das nicht machen, weil der user immernoch OnResize überschreiben kann (17:00:28) obbschtkuche: da dürfte es sowas wie procedure resize; geben :roll: |
Re: [Komp. Entwicklung] onResize bei abgeleiteter TImage K.
Das hast du aber eine Seite (beim maximierten Fenster) weiter oben geschrieben :zwinker:
Müssen wir jetzt noch weiter diskutieren? Wird leicht mehr als total OT |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:47 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-2025 by Thomas Breitkreuz