Moin Leute,
habe wiedermal ein Problem vor mir liegen wo ich nicht weiter komme! Hoffe sehr das Ihr mir bei der Lösung dieses Problems helft!
Ich erzeuge zur Laufzeit von einen Formular auf einem anderen Komponenten. klappt soweit alles ganz gut, bis auf die tatsache, dass die erzeugten komponenten nicht in der Komponentenliste des 2.Formulars stehen. geb euch mal kurzen quellauszug
1. Formular
Delphi-Quellcode:
procedure TForm1.button1Click(Sender: TObject);
var LEdit: TLabeledEdit;
g_box: TGroupBox;
radio: TRadioGroup;
datum: TDateTimePicker;
name: TLabel;
button: TButton;
i: integer;
begin
for i:=1 to 3 do begin
Form6.Width := i*270+(i*10)+20;
Form6.Height := 580;
Form6.Position := poScreenCenter;
g_box := TGroupBox.Create(Self);
with g_box do
begin
Name := 'g_box_' + IntToStr(i);
Caption := 'test ' + IntToStr(i);
Parent := Form6;
Height := 190;
Width := 270;
Left := (i-1)*280+10;
Top := 10;
ComponentIndex := 3+i;
end;
radio := TRadioGroup.Create(Self);
with radio do
begin
Parent := g_box;
Columns := 2;
Items.Add('ware1');
Items.Add('ware2');
Height := 33;
Width := 249;
Left := 10;
Top := 15;
end;
LEdit := TLabeledEdit.Create(Self);
with LEdit do
begin
Name := 'W_Nr_' + IntToStr(i);
EditLabel.Caption := 'Warennummer';
Text := '';
Parent := g_box;
Width := 121;
Top := 68;
Left := 10;
end;
LEdit := TLabeledEdit.Create(Self);
with LEdit do
begin
Name := 'Wert_' + IntToStr(i);
EditLabel.Caption := 'Wert';
Text := '';
Parent := g_box;
Width := 249;
Top := 112;
Left := 10;
end;
LEdit := TLabeledEdit.Create(Self);
with LEdit do
begin
Name := 'Anzahl_' + IntToStr(i);
EditLabel.Caption := 'Anzahl';
Text := '';
Parent := g_box;
Width := 121;
Top := 156;
Left := 10;
end;
datum := TDateTimePicker.Create(Self);
with datum do
begin
Name := 'datum_' + IntToStr(i);
Parent := g_box;
Width := 121;
Top := 68;
Left := 138;
end;
name := TLabel.Create(Self);
with name do
begin
Name := 'label_' + IntToStr(i);
Caption := 'Datum';
Parent := g_box;
Width := 121;
Top := 52;
Left := 138;
end;
button := TButton.Create(Self);
with button do
begin
Name := 'lbutton_' + IntToStr(i);
Caption := 'Laden';
Parent := g_box;
Width := 121;
Top := 156;
Left := 138;
end;
end;
button := TButton.Create(Self);
with button do
begin
Name := 'sbutton';
Caption := 'Speichern';
Parent := Form6;
Width := 81;
Top := 210;
Left := Form6.Width-273;
end;
button := TButton.Create(Self);
with button do
begin
Name := 'dbutton';
Caption := 'Drucken';
Parent := Form6;
Width := 81;
Top := 210;
Left := Form6.Width-187;
end;
button := TButton.Create(Self);
with button do
begin
Name := 'bbutton';
Caption := 'Schließen';
Parent := Form6;
Width := 81;
Top := 210;
Left := Form6.Width-101;
end;
Form6.ShowModal();
end;
2.Formular
Delphi-Quellcode:
procedure TForm6.Button1Click(Sender: TObject);
var i: Integer;
begin
Memo1.Lines.Clear;
for i:= 0 to ComponentCount-1 do
begin
Memo1.Lines.Add(Components[i].name);
end;
end;
Bekomme aber in dem Memo nur die Komponenten "MEMO" und "BUTTON" angezeigt, welche aber schon zur entwicklung erzeugt wurden!
Bitte um Eure Hilfe
Mit freundlichen Grüßen
mentos112