Einzelnen Beitrag anzeigen

RayEn

Registriert seit: 18. Aug 2010
7 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: StyleManger verursacht Stack Overflow

  Alt 7. Sep 2022, 11:26
Hallo,

kurze Rückmeldung zu meinem Problem:

ich hatte das Thema für mich erst mal beerdigt, weil ich bei der Ursachensuche nicht voran gekommen war. Da der Wechsel des Styles 'nur' dann Probleme verursacht hat, wenn das während des Programlaufs versucht wurde, habe ich das einfach in die Startphase (Create) verlegt. Man muss halt dann nach der Auswahl immer einen Neustart des Programms machen, nicht schön funktioniert.

Vorhin habe ich aus einer Laune heraus das Thema noch einmal angeschaut und dabei festgestellt, dass in VCL.Forms CreateParams die Zuweisung WndParent := Application.MainFormHandle in Folge wieder CreateParams aufruft. Passiert aber anscheinend nur, wenn der PopupMode des Hauptfensters auf pmExplicit gesetzt ist. Das hatte ich wohl beim Testen von Lösungen für mein anderes Problem (Hauptformular blieb durch andere Formulare verdeckt, obwohl es ausgewählt war) auf pmExplicit gestellt - zurück auf pmNone gestellt und alles ist OK.

Habe das Ganze auch mal in einem Testprojekt probiert: Formular, dass einen Button enthält, der dann StyleManager.TrySetStyle('Sky') aufruft - sobald im (Haupt)Formular pmExplicit gesetzt ist, bekomme man einen Stack Overflow.
  Mit Zitat antworten Zitat