Einzelnen Beitrag anzeigen

Mazen

Registriert seit: 6. Okt 2011
66 Beiträge
 
Delphi 7 Professional
 
#1

'Komponente existiert bereits'

  Alt 12. Okt 2011, 08:11
Guten morgen

Ich habe ein kleines Problem mit meinen dynamisch zur Laufzeit erstellten Checkboxen. (chk_2 bis chk_15)...
Beim ersten öffnen der Form läuft es wie es soll, die checkboxen werden angezeigt, keine Fehlermeldung. Hier mein Sourcecode zum Erzeugen der Komponenten.

Schließe ich die Form dann wieder, und rufe sie ein zweites mal auf (es handelt sich hierbei nicht um die "Hauptform" sondern um eine die sich über frmMain aufrufen lässt) bekomm ich die Meldung "Komponente mit der Bezeichnung 'chk_2' existiert bereits". Die Form öffnet dann allerdings trotzdem und es sind auch alle Checkboxen da... Aber das kann ja auch irgendwie so nicht richtig sein^^

Hatt erst das Free vergessen, aber auch mit
Code:
procedure TfrmRechte.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  cbRechte.Free;
end;
funktioniert es nicht :/
cbRechte ist vom Typ TCheckBox...

Hier auch nochmal der Sourcecode wo ich die Komponenten erzeuge:

Code:
for i := 0 to dm.smtZiele.RecordCount-2 do begin
    cbRechte := TCheckBox.Create(self);
    cbRechte.Caption := dm.smtZiele.FieldByName('user').AsString;
    cbRechte.Name := 'chk_'+dm.smtZiele.FieldByName('user_id').AsString;
    cbRechte.Left := 35;
    cbRechte.Top := top;
    cbRechte.Parent := frmRechte;
    cbRechte.Show;

    top := top + 17;
    dm.smtZiele.Next;
 end;
  Mit Zitat antworten Zitat