Ich habe eine Frage zu Fäden und Kontrollen. Ich habe einen modalen Dialog zur Synchronisierung erstellt. Es gibt drei Fortschrittsbalken und ein paar Beschriftungen. Wenn die Anwendung zum ersten Mal geöffnet wird, wird der Synchronisationsdialog geöffnet und die Aktualisierung durchgeführt. In der Show()-Methode des Dialogs habe ich drei verschiedene Threads erstellt. Jeder Thread steuert das Herunterladen der Daten, das Parsen von XML und das Einfügen in die Datenbank. Und zeigt dann den Fortschritt in der Fortschrittsleiste an. Alles, was beschrieben wurde, funktioniert gut.
Nun das Problem - ich möchte diesen Dialog automatisch schließen, wenn alle Elemente heruntergeladen, analysiert und in die Datenbank eingefügt wurden. Ich habe versucht zu prüfen, ob progressbar.position gleich progressbar.max ist und ich habe versucht zu prüfen, ob die Threads beendet sind, wenn ich mit dem progressbar Weg gehe, schließt sich der Dialog zu früh und ein progressbar ist nicht ganz beendet. Wenn ich mit der Thread-Prüfung Weg gehen, dann progressbars in der Mitte des Prozesses zu stoppen und das ist alles.
Vielleicht haben Sie es getan und sagen Sie dem Delphi-N00b, wie man es am besten macht.
Vielen Dank im Voraus...