alwaysOnTop
-
Einen kleinen Schönheitsfehler hat die Sache noch:
Mache ich eine Form1 mit einem Button
SetWindowPos(Form1->Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
Dann ist sie immer im vordergrund, auch vor winamp etc.
Mache ich jedoch einen Button der eine zweite Form aufruft und mit genau dem gleichen button schiebt sie sich nur in den vordergrund der ersten Form. Jedoch sind andere Programme vor.Wie kann man das lösen?
-
Original erstellt von <Gast>:
schiebt ... sich nur in den vordergrund der ersten Form. Jedoch sind andere Programme vor.Wie denn das, ich denke, die erste Form ist schon TOPMOST!?
-
Nein nein, nur wenn man in Form1 auf den Button klickt...
Also wenn du eine Form1 hast und per Knopfdruck Form2 öffnest welche sich mit dem TOPMOST befehl ganz nach vorne schummelt.
Das klappt aber irgendwie nur innerhalb des programms, benutze ich den selben befehl bei form1 ist diese auch bei allen anderen programmen vorne
-
also ich habe das im endeffekt so gemacht
SetWindowPos(Application->Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE);
nicht das form handle sondern das app handle verwenden.
[ Dieser Beitrag wurde am 06.02.2003 um 16:52 Uhr von raYne editiert. ]
-
Du wirst wohl nicht umhinkommen, auch Form1 nach vorne zu holen. Evtl. könntest du sie dann ja per Hide() verstecken.
-
Ahja, geht doch.
-
Danke erstmal aber es geht noch nicht ganz
:
Wenn ich nun eine Form1 mache, dort einen Button platziere der Form2 öffnet und dort per button
SetWindowPos(Application->Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE);
aufrufe passiert erstmal nichts. Klicke ich nun ein anderes Programm an und dann wieder mein Project klappt alles genauso wie es soll ( alles im Vordergrund, form2 immer vor form1 )
-
Ich kanns nicht austricksen, hat keiner Ahnung wie man das machen kann?
-
Seltsam, ich finde SetWindowPos() nicht in der Hilfe, aber der Code funktioniert... im FormShow beim App-Start. Vielleicht ist die Funktion doch nicht so eigendynamisch, wie es hier gebraucht wird?
BringWindowToTop() hat doch geklappt. Das würde ich als "Motor" schreiben, dann sollte es klappern können/dürfen/müssen *g*.
-
Super! Funktioniert