![]() |
Wie kann ich mehrere Edit (tedit) zusammenfassen
Hallo ich möchte 20 Editfelder mit einem befehl auf einmal sichtbar machen. Habe an ein array gedacht krieg es aber nicht hin.
Delphi-Quellcode:
Hier gibt er mir aber einen Access Violation Fehler beim klicken des Buttons.
procedure TForm1.Button1Click(Sender: TObject);
var Edit: Array[10..43] of TEdit; i: Integer; begin for i := 10 to 43 do Edit[i].Visible:=true; end; |
AW: Wie kann ich mehrere Edit (tedit) zusammenfassen
Du müsstest die Edits im Objektinspektor entsprechend durchnummeriert benennen, also Edit10, Edit11 usw.
und dann in etwa so:
Delphi-Quellcode:
var Edit:TEdit; i: Integer; for i := 10 to 43 do begin Edit:=TEdit(FindComponent('Edit'+IntTostr(i))); if Edit<>nil then Edit.Visible:=true; end; |
AW: Wie kann ich mehrere Edit (tedit) zusammenfassen
Danke :)
Habe den code noch Berichtigt
Delphi-Quellcode:
var
Edit:TEdit; i: Integer; begin for i := 10 to 43 do begin Edit:=TEdit(FindComponent('Edit'+IntTostr(i))); if Edit<>nil then Edit.Visible:=true; end; end; |
AW: Wie kann ich mehrere Edit (tedit) zusammenfassen
Oder, falls es außer de gewünschten keine anderen im Parent-Container gibt, Controls des Parent-Containers iterieren und für jedes Control auf is TEdit prüfen und dann Visible setzen?
|
AW: Wie kann ich mehrere Edit (tedit) zusammenfassen
Quick and Dirty:
Delphi-Quellcode:
Oder aber Du deklarierst Dein Array global bzw. als Feld des Formulars und fügst die Edits dort initial ein. Anschließend musst Du dann nur noch dieses Array durchlaufen.
procedure TForm1.Button1Click(Sender: TObject);
var i: Integer; begin for i := 10 to 43 do TEdit(FindComponent('Edit' + IntToStr(i))).Visible:=true; end;
Delphi-Quellcode:
var
Edits: array[10..43] of TEdit; ... procedure TForm1.FormCreate(Sender: TObject); var i: Integer; begin for i := Low(Edits) to High(Edits) do Edits[i] := FindComponent('Edit' + IntToStr(i)); end; procedure TForm1.Button1Click(Sender: TObject); var i: Integer; begin for i := Low(Edits) to High(Edits) do Edits[i].Visible:=true; end; |
AW: Wie kann ich mehrere Edit (tedit) zusammenfassen
wie kriege ich da am schnellsten eine function draus?
|
AW: Wie kann ich mehrere Edit (tedit) zusammenfassen
Wie meinen:?:
|
AW: Wie kann ich mehrere Edit (tedit) zusammenfassen
na ich will diesen code nicht immer wieder neu eingeben und ihn als function ablegen so das ich nur noch einen kurzen befehl eingeben muss wie
Delphi-Quellcode:
editsverschwinden:=true
|
AW: Wie kann ich mehrere Edit (tedit) zusammenfassen
Delphi-Quellcode:
procedure TForm1.ShowEdits(Show: Boolean);
var i: Integer; begin for i := Low(Edits) to High(Edits) do Edits[i].Visible := Show; end; //Anzeigen ShowEdits(true); //Verstecken ShowEdits(false); |
Dieses Thema wurde am "30. Oct 2013, 09:36 Uhr" von "TBx" aus dem Forum "Neuen Beitrag zur Code-Library hinzufügen" in das Forum "GUI-Design mit VCL / FireMonkey / Common Controls" verschoben.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz