Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Immer im Vordergrund (https://www.delphipraxis.net/59639-immer-im-vordergrund.html)

Amateurprofi 27. Dez 2005 23:59

Re: Immer im Vordergrund
 
Zitat:

Zitat von Luckie
Was er meinte: Welches Fenster ist denn ganz oben, wenn zwei oder mehr Fenster auf HWND_TOPMOST gesetzt werden?

Man sollte denken immer das, das zuletzt auf HWND_TOPMOST gesetzt wurde.
Scheint aber nicht so zu sein.
Ich habe eben mal ein bischen herumprobiert.
Wenn z.B. 2 Fenster auf HWND_TOPMOST gesetzt sind, ist das Fenster (dieser 2) oben, das den Fokus hat. Jedoch bleiben beide über anderen Fenstern, die zwar den Fokus haben, aber nicht auf HWND_TOPMOST gesetzt sind.

Luckie 28. Dez 2005 00:24

Re: Immer im Vordergrund
 
Das heißt, diese beiden Fenster führen dann so zusagen eine zweite z-Order ein, die über der von den normalen Fenstern liegt.

Amateurprofi 28. Dez 2005 01:02

Re: Immer im Vordergrund
 
Hallo Michael,
ja, so sieht es aus. Ich weiß nicht, wie das Windows-intern gelöst wird, kann mir aber vorstellen, daß die "Z-Order" letztendlich nur eine Liste aller Fenster ist, bei sichergestellt wird, (a) daß die Fenster die als topmost gekennzeichnet sind, oben in der Liste stehen und (b) daß ein als topmost gekennzeichnetes Fenster, das den Fokus hat, vor anderen topmost Fenstern steht.

himitsu 28. Dez 2005 03:29

Re: Immer im Vordergrund
 
Also wie das genau verwaltet wird, konnte ich auch noch nicht vorstellen, aber bisher scheint die Z-Order wirklich nur eine einzige Liste zu sein.
Dabei wird jedes Fenster immer soweit nach vorne geholt, wie se sein Status erlaub, sobald es den Fokus bekommt, oder für diese explizit gesagt wird, daß es nach vorne wandern soll.

Also, wenn man z.B. StayOnTop setzt, dann wird es soweit vorgeholt, daß es hinter dem letzten TopMost-Fenster und vor den anderen StayOnTop-Fenstern landet ... und so weiter.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:41 Uhr.
Seite 2 von 2     12   

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-2025 by Thomas Breitkreuz