Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi (unter-)Fenster _immer_ im Vordergrund (https://www.delphipraxis.net/33014-unter-fenster-_immer_-im-vordergrund.html)

Florian H 31. Okt 2004 14:49


(unter-)Fenster _immer_ im Vordergrund
 
Hallo,

ich möchte bei meiner Anwendung die dynamisch erzeugten Unter-Forms immer im Vordergrund haben, z.B. auch wenn das Mainform versteckt ist. Wobei das nicht sooo wichtig währe.

Die UnterForms erzeuge ich so
Delphi-Quellcode:
tform2.Create(self));
Das sind dann halt so ein paar Formulare mit wichtigem Zeug drin, was nicht in den BG soll.
Jetzt habe ich natürlich schon das Internet totgesucht und das gefunden:
Delphi-Quellcode:
with Self do {Form1,...}
  SetWindowPos(Handle, // handle to window
               HWND_TOPMOST, // placement-order handle {*}
               Left, // horizontal position
               Top,  // vertical position
               Width,
               Height,
               // window-positioning options
               SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
Klingt gut, oder? Ist es aber nur bedingt.
Denn da sind die Fenster dann zwar hübsch im Vordergrund, aber sobald ich einem davon den Focus gebe und dann ne andere Anwendung davorschiebe bzw. in den Vordergrund hole, sind die wieder brav in der "2. Reihe" und von StayOnTop (habe ich auch in den FormStyles drin) und so ist nix mehr zu sehen.

Was kann man da machen?
Die Fenster brauchen ansich fast nie Fokus, aber onTop sollten sie sein (nur anzeigenede Fkt.)


grüße
flo

jim_raynor 31. Okt 2004 14:55

Re: (unter-)Fenster _immer_ im Vordergrund
 
Schon mal versucht die Eigenschaft Delphi-Referenz durchsuchenFormstyle auf fsStayOnTop zu stellen?

Florian H 31. Okt 2004 14:57

Re: (unter-)Fenster _immer_ im Vordergrund
 
Zitat:

Zitat von Florian H
... und von StayOnTop (habe ich auch in den FormStyles drin) ...

jo.

Mit dem Hauptformular funktioniert ja auch alles, nur die dynamisch erzeugten Unterforms wollen nicht.

jfheins 31. Okt 2004 15:22

Re: (unter-)Fenster _immer_ im Vordergrund
 
In der OH kann man dazu folgendes lesen:
Das Formular bleibt immer im Vordergrund, es sei denn, bei anderen Fenstern ist FormStyle auch auf fsStayOnTop gesetzt. Wenn ein fsStayOnTop-Formular ein anderes fsStayOnTop-Formular aufruft, bleibt keines der beiden dauerhaft im Vordergrund.

Florian H 31. Okt 2004 15:52

Re: (unter-)Fenster _immer_ im Vordergrund
 
hm und was kann ich dann machen?
Wenn die MainForm nicht StayOnTop ist, wirds mit den anderen erst recht nix

jim_raynor 31. Okt 2004 16:14

Re: (unter-)Fenster _immer_ im Vordergrund
 
Zitat:

Zitat von Florian H
Zitat:

Zitat von Florian H
... und von StayOnTop (habe ich auch in den FormStyles drin) ...

jo.

Mit dem Hauptformular funktioniert ja auch alles, nur die dynamisch erzeugten Unterforms wollen nicht.

Das Hauptformular darfst du natürlich nicht mit StayOnTop belegen, nur deine Unterfenster.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:19 Uhr.

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