AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Modale Fenster verschwinden

Ein Thema von OlliWW · begonnen am 11. Jul 2014 · letzter Beitrag vom 11. Jul 2014
Antwort Antwort
OlliWW

Registriert seit: 31. Aug 2011
159 Beiträge
 
#1

Modale Fenster verschwinden

  Alt 11. Jul 2014, 11:32
Hallo Zusammen,

Wir haben in unserer Software immer wieder ein Phänomen das wir uns noch nicht so wirklich erklären können:

Es kommt immer wieder dazu, dass modale Fenster hinter einem anderen Fenster verschwinden. Dann kann man in dem Programm soviel klicken wie man will, es passiert nichts, weil das modale Fenster ja den Focus hat, man es aber nicht sieht. Oft hat man Glück und man kriegt es mit "ALT-Tab" wieder in den Vordergrund, das ist aber keine zufriedenstellende Lösung auf Dauer.

Das Hauptprogramm ist ein MDI Programm.

Kennt jemand dieses Verhaltung von Delphi, oder hat jemand eine Idee wie man dem auf die Schliche kommen könnte? Das Problem ist, dass es nicht immer auf tritt, eher zufällig.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Modale Fenster verschwinden

  Alt 11. Jul 2014, 11:38
Welche Delphi-Version?
Ältere Versionen haben Problem mit dem geänderten Z-Order-Fensterhandling von neueren Windows-Versionen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
OlliWW

Registriert seit: 31. Aug 2011
159 Beiträge
 
#3

AW: Modale Fenster verschwinden

  Alt 11. Jul 2014, 11:39
XE5, das Problem bestand auch schon unter Delphi 2007.

Ich habe mir auch schon den Changelog von XE6 durchgesehen, dort konnte ich aber im Zusammenhang mit VCL nichts mit modalen Fenstern finden.
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.158 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: Modale Fenster verschwinden

  Alt 11. Jul 2014, 11:46
Habe ich auch oft mit "älteren" Versionen gehört, hier bei XE5 passiert das auch ab und an. Immer wieder witzig

Reproduzieren kann ich es nicht.
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.354 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Modale Fenster verschwinden

  Alt 11. Jul 2014, 11:50
Ich hatte beim Wechsel von XP auf Windows7 auch mit diesem Problem zu kämpfen.
Geholfen hat mir diese Routine von Schweizern: http://www.swissdelphicenter.ch/de/showcode.php?id=261
Peter
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#6

AW: Modale Fenster verschwinden

  Alt 11. Jul 2014, 11:55
Das Problem kenne ich, bei uns hat das hier geholfen: http://www.detlef-heibing.de/program...und-holen.html
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.158 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Modale Fenster verschwinden

  Alt 11. Jul 2014, 12:19
Warum im onIdle? Wäre onActivate nicht eher geeignet?

Und: Ich sehe grade: TApplication.OnModalBegin und .onModalEnd. Noch nie vorher drüber gestoplert. Was man damit wohl anstellen kann?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.062 Beiträge
 
Delphi 12 Athens
 
#8

AW: Modale Fenster verschwinden

  Alt 11. Jul 2014, 12:28
MDI ist etwas, daß wohl nicht mehr so gut gewartet wird und wo es gern mal Problemchen gibt.
http://www.delphipraxis.net/180093-d...sprobleme.html

Wenn du es schaffst die Z-Order auszulesen, dann kannst du im Hintergrund einen Timer laufen lassen, welcher für das aktive Fenster schaut wo es ist und es dann nach vorne schiebt, wenn es nicht mehr vorne liegt.
Habt ihr noch StayOnTop-Fenster im Programm? Wenn ja, dann mußt du da aufpassen. (wir haben die alle rausgeworfen/umgebaut, da es damit noch mehr Probleme gab)

Ansonsten ein globaler Hotkey im Programm, der das aktive Fenster nach vorne holt, bzw. im Application.OnActivate (TApplicationEvents), wenn die Anwendung den Fokus bekommt.
> Screen.ActiveCustomForm


Ach ja, aufpassen muß man mit einigen Windowsdialogen, wie z.B. der MessageBox, welche von der VCL nicht grade sonderlich beachtet/erkannt werden.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (11. Jul 2014 um 12:32 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz