Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by CCRDude,
28. Okt 2011
Ein Deaktivieren des Buttons ist aber nur ein Workaround für einen kleinen Teil des Problems (und auch für Threads nötig, wie Luckie schon anmerkte - wobei man da nicht nur einen, sondern mutmaßlich etliche Steuerelemente behandeln muss, was ist beispielsweise mit Lade- und Speicher-Routinen?). Damit ist ein Doppelstart der Funktion verhindert, aber sonst?
Nächstes Problem nämlich: der User...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by CCRDude,
27. Okt 2011
Application.ProcessMessages birgt aber diverse Gefahren, man merke etwa, daß Dein OnClick-Handler den Button nicht für den Zeitraum der Aktion disabled, so daß ein ProcessMessages etwa bewirken würde, daß der Nutzer die Berechnung ein zweites Mal starten kann, bevor die erste zuende gelaufen ist (weil er den Button-Click "processed").
Anders gesagt: die einzige sinnvolle Variante ist,...