SirThornberry: Danke, das beruhigt mich etwas. Du hast das Problem exakt richtig dargestellt. Ich vermute einfach, dass ich nur zu blöde bin und es dafür eine einfache Standardlösung geben muss, weil dieses Problem doch sehr oft auftreten muss.
Meine Datenbanzugriffe benötigen etliche Sekunden, teilweise gar Minuten. Beim ersten Mal kann der User auch nichts anderes sinnvolles machen, als eben abzuwarten, bis die Daten zur Verfügung stehen. Schade, aber ist eben so.
Ich möchte die TProgressForm modal öffnen, damit der User warten muss und nicht auf der TMainForm herumclickt, also genau wie Du gesagt hast.
Das Fenster soll also aufgehen, den Fortschritt anzeigen und sich dann selbstätig wieder schließen. Das Hauptformular wartet derzeit darauf und macht dann weiter.
Wenn ich auf die modale Eigenschaft verzichte, geht das ganze natürlich mit
Delphi-Quellcode:
FormProgress.Show;
FormProgress.DoTheDeed;
aber dann wird weder automatisch auf DoTheDeed gewartet noch die Vorteile der Modalität genutzt.
Hoffentlich gibt es eine geradlinige Lösung... es gibt doch viele Programme, die ein Statusfenster anzeigen, während sie irgendwas machen... muss doch gehen!