Hai KaMpfGn0m,
ersteinmal: "Herzlich Willkommen in der Delphi-PRAXiS".
Du musst in diesem Fall alle Controls des Edits durchlaufen und prüfen ob es:
a) Ein Editfeld ist und
b) Ob der Name des Edits mit deinen Vorgaben übereinstimmt.
Das ganze kann zum Beispiel so aussehen:
Delphi-Quellcode:
procedure TForm1.btn_EditTestClick(Sender: TObject);
var
ndx: integer;
nummer: integer;
begin
nummer := 3;
for ndx := 0 to Pred(controlcount) do // Alle Controls durchlaufen
begin
if (Controls[ndx] is TEdit) and // Wenn das Control ein Edit ist und
(Controls[ndx].Name = 'edt_Edit' + IntToStr(nummer)) then // den Namen 'edt_Edit' + nummer hat
begin
if ((Controls[ndx] as TEdit).Text = 'G') then // Wenn in dem Control ein G steht dann
begin
ShowMessage('blubb');
end;
Break;
end;
end;
end;
Edit, das ganze noch als richtige Funktion *g*
Delphi-Quellcode:
function GetEdit(const aNumber: integer; const aParent: TWinControl): TEdit;
var
ndx: integer;
begin
result := nil;
with aParent do
begin
for ndx := 0 to Pred(controlcount) do // Alle Controls durchlaufen
begin
if (Controls[ndx] is TEdit) and // Wenn das Control ein Edit ist und
(Controls[ndx].Name = 'edt_Edit' + IntToStr(aNumber)) then
begin
Result := (Controls[ndx] as TEdit);
end;
end;
end;
end;
procedure TForm1.btn_Button1Click(Sender: TObject);
begin
if GetEdit(3,self).Text = 'G' then ShowMessage('blubb'); // Wenn das Edit auf der Form liegt
if GetEdit(2,Panel1).Text = 'G' then ShowMessage('blubb'); // Wenn das Edit z.B. auf Panel1 liegt.
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"