Zitat von
mkinzler:
Ich würde die Komponenten zur Laufzeit erzeugen. Das Deaktivieren düfte ja auch nicht werniger Aufwand bereiten.
Wenn ich sie deaktivieren würde stimmt das, allerdings, wenn ich Standardmäßig alle auf Visible = false habe, braucht ich nur die tatsächlichen auf "true" zu setzten. Den Vorteil den ich sehen, ist der, das ich zur Entwicklungszeit meine Oberfläche immer sehe und somit somit besser meine
GUI erstellen kann.
Also, die Komponenten darum, Label´s, Button´s etc. Ansonsten müsste ich ja evntuell über ein Frame gehen oder so. Also so eine Art Platzhalter für meine Edit´s etc.
Zitat von
Bernhard Geyer:
Folgende Idee:
Delphi-Quellcode:
type
TSystemzustand = (Zustand1=1, Zustand2=23, ... Zustandz);
type
TmeinForm = class(TForm);
var
zustandEdits: array[Low(TSystemZustand)..High(TSystemzustand)];
...
procedure TMeinForm.FormCreate()
for i := Low(TSystemZustand) to High(TSystemzustand) do
begin
zustandEdits[i] := TEdit.Create(self);
...
end;
end;
procedure TMeinForm.DoWithEdit(zustand: TSystemzustand);
begin
zustandEdits[zustand].Text := 'text';
end;
Finde ich sehr gut, allerdings bin ich wie oben schon genannt noch am überlegen, ob ich die Edits zur Laufzeit oder Entwicklungszeit erstelle. Das sollte ja auch bei deiner Idee möglich sein. Ich habe nur ein Problem mit folgendem Type:
Delphi-Quellcode:
type
TSystemzustand = (Zustand1=1, Zustand2=23, ... Zustandz);
Die Werte (Zustand1=
1, Zustand2=
23, ... Zustand
z);
könnten sich ja zur Laufzeit ändern, und die Werte sind von Kunde zu Kunde anders. Diese müsste ich aus einer Systemtabelle nehmen.
Code:
Systemzustand 1 = 1101;
Systemzustand 3 = 1102;
Systemzustand 12 = 1103;
Gruß Jens
[Edit]
Zur Laufzeit in Objektlisten, parallel dazu gegf. eine Mappingstringlist um dynamisch über Namen(Stings) zugreifen zu können.
Bei der Menge an Edits wäre es wg. der Anzahl der Handles gegf. interessant (sofern nichts editiert werden muß) andere gegf. eigene (Graphic)Controls zu verwenden.[/Edit]
Es müsste nicht editiert werden. Eine reine Anzeige.