Georg Hübner
2014-08-03 21:34:45 UTC
Hallo,
wenn ich im Objektinspektor - Ereignisse im leeren Feld neben dem Ereignis doppeltklicke,
erzeugt delphi mir automatisch eine Ereignissroutine.
Das funktioniert auch bei meiner selbst geschriebenen Komponente wunderbar.
Nur hat das Ganze einen kleinen Schönheitsfehler. :-(
Der Bezeichner der Procedure setzt sich aus mehreren Klassennamen zusammen und wird damit ellenlang.
Ich kann natürlich diesen Bezeichner im OI per Hand ändern. Schöner wäre es aber, wenn ich hier schon
im Programmcode meiner Komponente entsprechend eingreifen könnte.
Leider habe ich zu diesem Thema nichts im Netz gefunden.
Aufbau der Komponente (Kurzfassung):
TMyItem=class(TCollectionItem);
- enthält ein Ereignis
TMyItems=class(TCollectonItems);
- hier werden über den OI dynamisch TMyItem-Objekte hinzugefügt
TMyKomponent =class(TComponent);
- enthält ein TMyItems-Objekt als Eigenschaft
- empfängt WM_USER+x - Botschaften und ruft die entsprechende MyItems.Item[x]-Procedur auf.
Die von delphi erzeugte Ereignissroutine sieht dann so aus:
procedure MyKomponent1MyItems0MyEvent(Sender: TObject);
begin
end;
Weis jemand etwas dazu oder hat den einen oder anderen Link der mir weiterhelfen könnte?
Mfg
Georg Hübner
wenn ich im Objektinspektor - Ereignisse im leeren Feld neben dem Ereignis doppeltklicke,
erzeugt delphi mir automatisch eine Ereignissroutine.
Das funktioniert auch bei meiner selbst geschriebenen Komponente wunderbar.
Nur hat das Ganze einen kleinen Schönheitsfehler. :-(
Der Bezeichner der Procedure setzt sich aus mehreren Klassennamen zusammen und wird damit ellenlang.
Ich kann natürlich diesen Bezeichner im OI per Hand ändern. Schöner wäre es aber, wenn ich hier schon
im Programmcode meiner Komponente entsprechend eingreifen könnte.
Leider habe ich zu diesem Thema nichts im Netz gefunden.
Aufbau der Komponente (Kurzfassung):
TMyItem=class(TCollectionItem);
- enthält ein Ereignis
TMyItems=class(TCollectonItems);
- hier werden über den OI dynamisch TMyItem-Objekte hinzugefügt
TMyKomponent =class(TComponent);
- enthält ein TMyItems-Objekt als Eigenschaft
- empfängt WM_USER+x - Botschaften und ruft die entsprechende MyItems.Item[x]-Procedur auf.
Die von delphi erzeugte Ereignissroutine sieht dann so aus:
procedure MyKomponent1MyItems0MyEvent(Sender: TObject);
begin
end;
Weis jemand etwas dazu oder hat den einen oder anderen Link der mir weiterhelfen könnte?
Mfg
Georg Hübner