ok, nun mecker zumindest nicht mehr der Compiler, beim Erstellen der exe.
Aber ich bekomme immer noch eine Fehlermeldung. Und zwar versucht das Programm beim Zerstören noch auf Datenbankbestandteile zuzugreifen, vermute ich zumindest, denn in der Fehlermeldung steht immer wieder, dass "Das Feld Text wurde nicht gefunden" Dies ist in dem Fall das letzte Datenbankfeld.
Diese Meldung kommt nur, wenn ich versuche DestroymyDBKompos ausführen zu lassen. Wenn ich mir davor eine Message anzeigen lasse ist alles ok.
Und noch ein kleines Problem. Ich habe die Prozedure ein wenig umgebaut, weil ich einfach checken wollte, wo der Fehler liegen könnte.
Delphi-Quellcode:
procedure TForm1.DestroymyDBKompos;
var
i:integer;
begin
i:= 0;
for i := scr_dbfields.parent.ComponentCount-1 downto 0 do
if (Assigned(scr_dbfields.parent.Components[i]))
and ((scr_dbfields.parent.Components[i] is TDBEdit)
or (scr_dbfields.parent.Components[i] is TLabel))
then
begin ShowMessage(scr_dbfields.parent.Components[i].Name);
scr_dbfields.parent.Components[i].Free;
end;
end;
Die Messagebox erhalte ich nicht, denn es kommt vorher die Meldung, wie oben beschrieben. Hm, muss ich die Komponenten vorher noch von der
DB lösen???