Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Uwe Raabe,
21. Sep 2017
Komisch, hier kommt: Symbol 'setControlDimension' kann nicht erfasst werden.
Bei meinem Doppelklick-Experiment (Doppelklick auf Button2) wurde aber immer nur der eine Button (Button1) animiert. Der andere (Button2) war nur deswegen da, weil der animierte einem schon mal schnell unter der Maus wegrutschte.
procedure TForm216.Button2Click(Sender: TObject);
begin
...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Uwe Raabe,
21. Sep 2017
Compiliert das überhaupt? Und was passiert hier bei dem oben beschriebenen Doppelklick-Experiment?
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Uwe Raabe,
21. Sep 2017
Das ist allerdings so, in vielen Fällen aber auch erwünscht und meistens kein Problem, solange die Animationszeiten entsprechend kurz sind.
Nehmen wir nur mal den Fall, wo die Animation in einem ButtonClick-Event ausgeführt wird. Wenn dann im Application.ProcessMessages der gleiche ButtonClick nochmal ausgelöst wird, hat man plötzlich zwei Animationsschleifen gleichzeitig laufen.
Man kann...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Uwe Raabe,
21. Sep 2017
Dann hast du aber irgendwas mit Align oder Anchors oder sonstwie mit der Position bei dem Label verändert. Das ging aus deiner Beschreibung so erstmal nicht hervor.
Es geht aber vielleicht noch einfacher: Nimm deinen ursprünglichen Code und ersetze das Application.ProcessMessages durch ein Control.Update.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Uwe Raabe,
21. Sep 2017
Wieso ändert Label2 überhaupt seine Position, wenn das Form in der Höhe verkleinert wird?
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Uwe Raabe,
21. Sep 2017
Mich stört ja gewaltig das Application.ProcessMessages, weil dabei ja erst die gesamte Message-Queue abgearbeitet wird. Das kann sowohl zu einem Stocken der Animation führen, als auch unerwünschte Nebeneffekte oder Reentrance-Probleme verursachen. Bei simplen Testanwendungen kommt das zwar sicher kaum vor, aber in komplexen Anwendungen ist sowas durchaus denkbar.
Eine mögliche Alternative...