Hallo,
ich vermute Deim Problem ist, das Du nicht weißt wie man einem dynamisch erzeugtem Objekt EventHandler zu weist.
Jeder Event-Property kann eine Methode zugewiesen werden. Das Geheimnis ist nur wie man an die Methoden-Signatur (unter Methoden-Signatur versteht man die Anzahl der Parameter und deren Typen) kommt.
Lege ein TStringGrid auf das Formular und erzeuge über den Objektinspektor den OnSelectCell EventHandler.
Der sieht dann so aus
Delphi-Quellcode:
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
end;
Jetzt kannst Du diesen Teil kopieren
(Sender: TObject; ACol, ARow: Integer; var CanSelect: Boolean);
Damit schreibst Du jetzt folgende Methode
Delphi-Quellcode:
procedure TForm1.MySelectCell(Sender: TObject; ACol, ARow: Integer; var CanSelect: Boolean);
begin
// mach hier irgend was
end;
Dein Code wird an entsprechend erweitert:
Delphi-Quellcode:
procedure create_stringgrids;
Var i : Byte;
begin
for i:=1 to 26 do
begin
FStringGrid[i]:=TStringGrid.create(Form1);
with FStringGrid[i] do
begin
Parent:= FTabsheet[i]; //Array der Tabsheets im FPageControl
Name:= 'StringGrid' +chr(64+i);
ColCount:=5;
RowCount:=8;
OnSelectCell:=MySelectCell;
end;
end;
groesse_stringgrid;
end;
Über den Parameter Sender kannst Du feststellen welches TStringGrid das Event gefeuert hat.