-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
26. Mär 2019
Also bei mir funktioniert das so erst einmal. Ich hatte deinen Lösungsvorschlag daher auch schon im entsprechenden Ticket zu dem Bug im QP (hier: https://quality.embarcadero.com/browse/RSP-23179) gepostet, natürlich mit Verweis auf deinen Original-Post (will mich ja nicht mit fremden Federn schmücken).
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
25. Mär 2019
Ich glaube, so ganz hundertprozentig konnten wir das noch immer nicht rausarbeiten, welche Konstellation genau für den Fehler sorgt. Bei mir z.B. tritt er innerhalb der VM mit Win8.1 auf, direkt auf meinem normalen Win10 habe ich kein Problem. Uwe aber konnte den Fehler auch unter Win8.1 nicht nachvollziehen, andere wiederum berichten auch unter Win10 von Problemen, die wahrscheinlich die gleiche...
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
25. Mär 2019
Wenn ich das richtig sehe, dann gibt es den passenden Eintrag im QP sogar schon (allerdings ohne Lösungsvorschlag):
https://quality.embarcadero.com/browse/RSP-23179
Ich werde mal die Erkenntnisse hier aus der Diskussion ergänzen.
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
25. Mär 2019
Danke! Das heißt, das könnte man dann so mit dem Lösungsvorschlag bei Emba melden, oder?
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
25. Mär 2019
Jepp, das sehe ich ähnlich, daher habe ich auch noch nichts bei Emba gemeldet bisher. Da es in einem anderen Thread (nicht von mir) Thema war, bei dem es auch um die Kombination Rio+Win8.1 ging, hier noch der Hinweis, dass es der VMware Workstation Player in der Version 12 ist. Windows ist die Version 6.3 Build 9600.
Weitere Tests, die ich gerade noch gemacht habe: ändere ich in der VM die...
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
22. Mär 2019
Das Win8.1 in der VM hat bei mir eine Skalierung von 125% eingestellt. Möglicherweise spielt das eine Rolle.
Kann heute nicht mehr testen, ob sich was ändern würde, wenn ich die auf 100% stelle - bin nicht mehr an dem Rechner.
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
22. Mär 2019
*** Update: ich konnte das Problem mit einer neuen, leeren Anwendung reproduzieren ***
Vorgehen: neue, leere VCL-Anwendung erstellen. Dem Form1 den WindowsState Maximized zuweisen. Die beiden Events OnActivate und OnCreate werden mit folgendem Code versorgt:
procedure TForm1.FormActivate(Sender: TObject);
begin
ShowMessage('activate');
end;
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
22. Mär 2019
Ja, das sehe ich genauso. :-) Falls das missverständlich war: dieses SetFocus vom PageControl ist auch nichts, was ich selber mache, sondern das passiert halt innerhalb irgendwelcher VCL-Routinen. Wie geschrieben: wenn ich es einigermaßen eingegrenzt habe, dann passiert es in der Folge irgendwelcher DPI-Geschichten.
An Fremdkomponenten habe ich nur pgDAC und VST. Beide kommen aber im...
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
22. Mär 2019
Hmh, es scheint so, als würde das Activate beim Fokussieren des PageControl auf dem Formular ausgelöst, und in den aufrufenden Funktionen davor passiert irgendwas mit einer Umrechnung wegen DPI. Ich vermute da irgendwo jetzt ein Problem vielleicht auch gerade im Zuammenspiel mit Win 8.1.
Um die Fragen noch zu beantworten:
OldCreationOrder ist false und war es auch immer. Aber auch ein Setzen...
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
21. Mär 2019
Ich hatte Breakpoints auf jeweils der ersten Zeile von meinem FormActivate und vom FormCreate. Die erste Zeile vom Activate wurde vor der ersten Zeile vom Create ausgeführt.
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
21. Mär 2019
Ja, klar, das wäre die Notlösung. Das wird allerdings auch einiges an Bastelei, vielleicht würde ich dann doch einfach aufgeben und es halt doch einfach so hinnehmen. ;-)
Ich hatte gehofft, dass es eine Funktion aus den Standard-Units gibt, die benutzt wird, um das WM_ACTIVATE-Event anzulegen. Dann könnte man ja da einen Breakpoint reinsetzen und schauen, von wo aus das aufgerufen wird.
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
21. Mär 2019
@hoika: Danke für die Rückmeldung. In einem leeren Projekt klappt es bei mir auch problemlos - hatte ich im Ursprungspost auch schon geschrieben. :-)
@Delphi.Narium: Ja, das wäre wohl der einfachste Workaround. :thumb:
Aber ich würde immer noch gerne die Ursache verstehen und ob es wirklich ein Fehler von mir ist oder ein Bug in der VCL.
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
21. Mär 2019
Kleiner Nachtrag: wie ich zur Not einen Workaround basteln könnte mit einer Statusvariablen, die bemerkt, dass das OnActivate vor dem OnCreate ausgeführt wurde, ist eigentlich auch klar. Mir geht es aber wirklich darum, irgendwie die Ursache herauszufinden, denn das finde ich schon ein bisschen merkwürdig, dass das passiert. Wenn sich dabei herausstellt: ja, ist halt so und ist auch erlaubt so...
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
21. Mär 2019
Wie gesagt, ob das schön ist oder nicht, soll jetzt nicht unbedingt das Thema sein. :-) Aus meiner Sicht sollte ich mich aber darauf verlassen können, da die Reihenfolge der Ereignisse auch explizit in der Doku erwähnt wird.
Der Vorschlag, das OnActicate erst am Ende von OnCreate zu setzen, hilft leider auch nicht (was ich zugegebenermaßen schon befürchtet habe). In dem Fall wird as OnActivate...
-
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by Bbommel,
21. Mär 2019
Hallo Lieblingsforum,
ich habe mir jetzt auch mal Delphi Rio Update 1 angesehen. Beim compilieren meiner Hauptanwendung ist mir dabei ein merkwürdiger und sehr lästiger Effekt aufgefallen: zur Initialisierung meiner Anwendung gibt es einigen Code im OnCreate und einiges im OnActivate des Hauptformulars der Anwendung. Im OnCreate werden einige essentielle Dinge initailisiert...