Hallo Leute,
ich habe folgende Funktionen :
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| function TForm1.picload(Img: TImage); begin OpenDialog1.Filter := 'Bitmap|*.bmp|All files|*.*'; if OpenDialog1.Execute then begin Img.picture.Bitmap.LoadFromFile(OpenDialog1.FileName); end; end;
procedure TForm1.picload1(Sender: TObject); begin picload(Img1); end; |
Von der letzteren gibt es z.Z. ca. 40 Stück für entsprechend 40 zu landene Bilder (picload2,picload3 mit Aufruf picload(Img2),picload(Img3) u.s.w.). Der Aufruf erfolgt durch den OnClick-Eventhandler für das entsprechende Bild.
Natürlich möchte ich mir die 40 Prozeduren sparen und die picload-Funktion direkt für jedes Image benutzen. Versuch war dieser :
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| function TForm1.picload(Sender: TObject) : TImage; begin OpenDialog1.Filter := 'Bitmap|*.bmp|All files|*.*'; if OpenDialog1.Execute then begin Sender.picture.Bitmap.LoadFromFile(OpenDialog1.FileName); end; end; |
Jetzt wurde die einzige Picload-Funktion für jedes der 40 Images benutzt.
Wie kann ich nun Sender benutzen, damit ich auf das aufrufende Image zugreifen kann ?
Dank im voraus
-- A l e x