Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Sichtbares Fenster kann nicht in modales geändert werden (https://www.delphipraxis.net/212691-sichtbares-fenster-kann-nicht-modales-geaendert-werden.html)

striderx 15. Mär 2023 23:48

Sichtbares Fenster kann nicht in modales geändert werden
 
Bei einer Anwendung, die bereits seit ein paar Wochen läuft, ist jetzt die Meldung 'Sichtbares Fenster kann nicht in modales geändert werden' gekommen. Und zwar an einer Stelle, an der mit ShowModal eine (bei Programmstart automatisch generierte) Form auf gerufen wird.

Diese Fehlermeldung kommt wohl dann, wenn man eine Form aufruft, bei der Visible auf True steht. Da ich den Fehler nicht nachstellen kann und er zuvor auch nicht aufgetaucht ist, bis ich jetzt ziemlich ratlos. Das einzige, was mir einfällt, ist vor dem ShowModal die Visible-Eigenschaft der aufzurufenden Form Visible explizit auf False zu setzen.


Hat jemand eine Idee?

himitsu 16. Mär 2023 00:13

AW: Sichtbares Fenster kann nicht in modales geändert werden
 
Du hast doch schon den Grund und die Lösung?

Im FormDesigner sollte Visible nicht auf True stehen.
(oder vorher eben Hide, bzw. Visible:=False)



Und warum werden sinnlos ALLE Forms beim Start automatisch erzeugt?
Forms die man nur kurz und/oder selten benötigt, werden dann erstellt (selber das Create ausführen), wenn man sie braucht und anschließend wieder freigeben.

striderx 16. Mär 2023 00:23

AW: Sichtbares Fenster kann nicht in modales geändert werden
 
Zitat:

Zitat von himitsu (Beitrag 1519925)
Du hast doch schon den Grund und die Lösung?

Im FormDesigner sollte Visible nicht auf True stehen.
(oder vorher eben Hide, bzw. Visible:=False)

Im Form-Designer steht/stand Visible auf False.

himitsu 16. Mär 2023 02:40

AW: Sichtbares Fenster kann nicht in modales geändert werden
 
Tja, dann hast du entweder irgendwo ein .Visible:=True oder ein .Show

oder in der automatischen Reihenfolge ist diese Form die Erste.
Die erste Form (über Application.CreateForm) ist immer die MainForm
und die MainForm wird immer atomatisch sichtbar gemacht ... somit wäre diese Form entweder falsch eine Main oder du bist falsch und es ist ein Fehler sie selber nochmals sichtbar machen zu wollen.


Zitat:

Da ich den Fehler nicht nachstellen kann und er zuvor auch nicht aufgetaucht ist
Würde jemand eine Versionierung benutzen, oder einen Blick in die Historie werfen,
dann würde Dieser schnell wissen, was sich geändert hat und eventuell auch warum es plötzlich nicht mehr geht.

striderx 16. Mär 2023 07:59

AW: Sichtbares Fenster kann nicht in modales geändert werden
 
Zitat:

Zitat von himitsu (Beitrag 1519927)
Tja, dann hast du entweder irgendwo ein .Visible:=True oder ein .Show

oder in der automatischen Reihenfolge ist diese Form die Erste.
Die erste Form (über Application.CreateForm) ist immer die MainForm
und die MainForm wird immer atomatisch sichtbar gemacht ... somit wäre diese Form entweder falsch eine Main oder du bist falsch und es ist ein Fehler sie selber nochmals sichtbar machen zu wollen.

Da gibt es kein ".Visible:=True oder ein .Show ", und die Form ist auch nicht die erste, die erstellt wird.


Zitat:

Zitat von himitsu (Beitrag 1519927)
Würde jemand eine Versionierung benutzen, oder einen Blick in die Historie werfen,
dann würde Dieser schnell wissen, was sich geändert hat und eventuell auch warum es plötzlich nicht mehr geht.

Wie gesagt: Die Anwendung ist seit einiger Zeit unverändert gelaufen, ohne dass der Fehler aufgetaucht ist. Und reproduzieren kann ich ihn jetzt auch nicht.

Die selbe Fehlermeldung kommt übrigens auch, wenn die aufgerufende Form Enabled = False hat (was hier nicht der Fall ist).

haentschman 16. Mär 2023 08:28

AW: Sichtbares Fenster kann nicht in modales geändert werden
 
Moin...8-)

Zitat:

Bei einer Anwendung, die bereits seit ein paar Wochen läuft
Du hast vergessen zu erwähnen:
1. Debug Modus in der Entwicklung?
2. Release Modus in der Entwicklung?
3. Release beim "Kunden"?
4. MadExcept oder EurekaLog vorhanden?
5. Versionskontrollsystem vorhanden?

striderx 16. Mär 2023 10:26

AW: Sichtbares Fenster kann nicht in modales geändert werden
 
Zitat:

Zitat von haentschman (Beitrag 1519932)
Moin...8-)

Zitat:

Bei einer Anwendung, die bereits seit ein paar Wochen läuft
Du hast vergessen zu erwähnen:
1. Debug Modus in der Entwicklung?
2. Release Modus in der Entwicklung?
3. Release beim "Kunden"?
4. MadExcept oder EurekaLog vorhanden?
5. Versionskontrollsystem vorhanden?

Debug Mode beim Kunden
Kein Madexcept oder EurekaLog
VCS m.E. hier nicht relevant, da unveränderte Version seit einiger Zeit ohne diesen Fehler läuft

haentschman 16. Mär 2023 12:57

AW: Sichtbares Fenster kann nicht in modales geändert werden
 
Zitat:

VCS m.E. hier nicht relevant
Schon relevant. Weil du ggf. einen Schritt zurück machen kannst bzw. zu sehen was konkret geändert wurde.
Zitat:

da unveränderte Version seit einiger Zeit ohne diesen Fehler läuft
Ist ist Delphi aktualisiert worden? Die Version mit der neuen Version compiliert worden?
Zitat:

Kein Madexcept oder EurekaLog
Schlecht! Dann wüßtest du WO (Zeilennummer) das ausgelöst wird!

himitsu 16. Mär 2023 13:42

AW: Sichtbares Fenster kann nicht in modales geändert werden
 
Das wo weiß er ja so auch schon.
-> da wo er ShowModal aufruft

Man könnte sich z.B. ins OnShow der Form hängen, und schauen wo es vorher sichtbar gemacht wird.

striderx 16. Mär 2023 19:29

AW: Sichtbares Fenster kann nicht in modales geändert werden
 
Nachdem schließlich ein Start des Programms jedes Mal zu einer Access Violation in GDI32Full.DLL führte, ist der PC neu aufgesetzt worden und seit her ist kein Fehler mehr aufgetreten (Daumen drücken).

Kann soetwas wirklich von soetwas kommen? :gruebel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:54 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz