Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by idefix2,
27. Aug 2015
Das ganze soll als einfaches Beispiel für den prinzipiellen Ablauf dienen. Dass der User so einen Ablauf immer abbrechen können muss, ist ohnehin klar, aber darum geht es hier doch nicht.
Und genau darum geht es doch in diesem Thread. Wie setze ich ohne showmodal um, dass mein Programm den Ablauf erst fortsetzt, wenn es die Daten bekommen hat, die es zur Fortsetzung braucht.
Und wer...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by idefix2,
27. Aug 2015
@Baumina
Inwieweit widerspricht das eine dem anderen? Das Programm braucht zum Abarbeiten eines Tasks noch Eingaben von mir (und das vielleicht in einer Schleife - ich sage nicht, dass der TE das braucht, aber es geht um den allgemeinen Fall), und kann mit DIESEM Task ohne die Eingaben nicht weitermachen.
Mir erscheint es extrem unschön, alles, was nach dieser einen Abfrage passiert, in eine...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by idefix2,
27. Aug 2015
Meines Erachtens ist ein grundlegender Unterschied zwischen der asynchronen Reaktion auf ein beliebiges Ereignis, und dem Warten auf die Beendigung eines Tasks, um dann mit dem normalen Programmablauf fortzufahren.
Und die Übergabe als Prozedur funktioniert überhaupt nicht, oder nur mit gröbsten Verrenkungen bzw. völlig unnötigen Rekursionen, wenn der Aufruf der Form in einer Schleife...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by idefix2,
27. Aug 2015
Was soll um Himmels Willen an der Variante, die du vorschlägst, besser sein?
Es gibt schon Situationen, wo anonyme Methode etwas bringen, aber hier? Nur, um endlich einmal eine anonyme Methode verwenden zu können?
Programmcode sollte meines Erachtens vor allem LESBAR sein, man sollte wenn möglich beim ersten Hinsehen erkennen, was passiert. Das ist bei Code, der als anonyme Methode im...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by idefix2,
27. Aug 2015
Es geht sogar noch einfacher, weil die Eigenschaft visible ohnehin durch show und close gesetzt wird.
Also kein Überschreiben von show und close nötig, sondern nur repeat ... until not visible.
Die Form sollte aber nicht mit caFree geschlossen werden, sonst kann es knallen.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by idefix2,
27. Aug 2015
class TSemimodalForm (TForm);
private
finished: boolean;
public
procedure WaitForMe;
procedure show; override;
procedure close; override;
end;