Hallo,
langsam bin ich am verzweifeln. Ich schreibe eine nicht sichtbare Komponente die grundlegende Funktionen bereitstellt.
Folgende Situation:
Ein Formular enthält:
- ein "Grid" (advStringGrid, DBGrid oder VirtualStringTree)
- ein schon fertiges FRAME mit Navigationsbuttons (Speedbuttons) und einer Statusbar
- ein schon fertiges FRAME mit Buttons wie Aktualisieren, Verwerfen, Schließen, Hilfe.
Jedes mal wenn ein solches Formular neu erstellt wird gibt es eine ganze Reihe an Prozeduren die immer das Gleiche machen:
FirstClick, PrevClick, NextClick, LastClick, AddClick, SchliessenClick, HilfeClick,...
Jetzt soll ich eine Komponente schreiben die diese einheitlichen Funktionen kapselt. Dafür habe ich einer nicht visuelle Komponente geschieben (oder bin dabei).
Für die Grids habe ich, erfolgreich, folgendes benutzt:
Delphi-Quellcode:
{$REGION 'Links der Grids'}
strict private
FAdvStringGridLink : TAdvStringGrid;
FVirtualStringTreeLink : TVirtualStringTree;
FDBGridLink : TDBGrid;
procedure SetAdvStringGridLink (const Value : TAdvStringGrid);
procedure SetVirtualStringTreeLink(const Value : TVirtualStringTree);
procedure SetDBGridLink (const Value : TDBGrid);
published
property LinkAdvStringGrid : TAdvStringGrid read FAdvStringGridLink
write SetAdvStringGridLink;
property LinkVirtualStringTree : TVirtualStringTree read FVirtualStringTreeLink
write SetVirtualStringTreeLink;
property LinkDBGrid : TDBGrid read FDBGridLink
write SetDBGridLink;
{$ENDREGION}
Damit kann ich im Objektinspektor das entsprechende Grid auswählen, sobald es auf dem Formular ist.
Das Gleiche habe ich für die Oberflächenelemente versucht:
Delphi-Quellcode:
{$REGION 'Links zu den Oberflächenelementen'}
strict private
FFormVerwaltung : TFormVerwaltung;
FfraNavigationStatusCustom : TfraNavigationStatusCustom;
FfraButtonleiste : TfraButtonleiste;
procedure SetFormVerwaltung (const Value : TFormVerwaltung);
procedure SetfraButtonleiste (const Value : TfraButtonleiste);
procedure SetfraNavigationStatusCustom(const Value : TfraNavigationStatusCustom);
published
property FormVerwaltung : TFormVerwaltung read FFormVerwaltung
write SetFormVerwaltung;
property fraButtonleiste : TfraButtonleiste read FfraButtonleiste
write SetfraButtonleiste;
property fraNavigationStatusCustom : TfraNavigationStatusCustom read FfraNavigationStatusCustom
write SetfraNavigationStatusCustom;
{$ENDREGION}
Wobei TfraButtonleiste und TfraNavigationStatusCustom Frames sind.
Das Formular selbst ist ein TFormVerwaltung und ich müsste da Self angeben können, oder so.
Diese Eigenschaften sehe ich im Objektinspektor, kann sie aber nicht zuweisen.
Kann mir da jemand helfen?
Danke David