![]() |
Fenster immer im Vordergrund?
Ja, wie geht das?
Chris |
Code:
SetWindowPos(Handle, HWND_TOPMOST, 0 , 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE);
|
Hi Chris,
Code:
MfG,
SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, 0);
d3g [edit]Mal wieder was gleichzeitiges. ;-)[/edit] |
Zitat:
|
Hi Leut'z
bei mir funktioniert das nicht!!! ich habe zwei Formen ,Form2 soll immer in Vordergrund bleiben. und bei einen klick auf einen button soll er wieder normal werden... HELP!! Form2.show;
Delphi-Quellcode:
PS: Habe Windows XP falls das euch hilfen soll
procedure TForm2.Button1Click(Sender: TObject);
begin if Form1.Visible = False then Form1.Visible := True else Form1.Hide; SetWindowPos(Handle, HWND_TOPMOST, 0 , 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE); end; |
Hallo im Club der Fenster-Oben-Windows-XP-geschädigten!
Fenstereigenschaft stayOnTop geht auch nicht. Nur wenn einer auf die Idee kommt. Gruß oki |
Ich habs gefunden *freu*
Delphi-Quellcode:
{
[b]Ein Fenster einer Anwendung immer zuoberst anzeigen, auch bei minimiertem Hauptfenster[/b] Manchmal möchte man, daß geöffnete (Unter-)Fenster einer Anwendung auf dem Desktop bleiben, wenn das Hauptfenster minimiert wird, oder daß ein Fenster immer im Vordergrund bleibt, auch wenn es nicht den Fokus hat. Ich will mal kurz zeigen, wie man das zur Laufzeit einstellen kann: } //OnTop.. SetWindowPos(Handle, HWND_TOPMOST, Left,Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE); //..und zurück: SetWindowPos(Handle, HWND_NOTOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE); //OnDesktop.. SetWindowLong(Handle, GWL_HWNDPARENT, 0); //..und zurück: SetWindowLong(Handle, GWL_HWNDPARENT, Application.Handle); //FormStyle dabei auf fsNormal setzen. Das ist alles! (Ralph Stoesser) |
Nachtrag:
Nun leider funktioniert ein befehl immer noch nicht in meiner Anwendung!*heul*
Delphi-Quellcode:
hier was ich habe: Form2 wird mit Form2.Show; geöffnet und ist auf fsStayOnTopeingestellt ,und sollte es auch bleiben.
//..und zurück:
SetWindowLong(Handle, GWL_HWNDPARENT, Application.Handle);
Delphi-Quellcode:
Hat jemand einen Rat für mich?
procedure TForm2.Button1Click(Sender: TObject);
begin if Form1.Visible = False then begin Form1.Visible := True [color=#ff002a]//..und zurück: SetWindowLong(Handle, GWL_HWNDPARENT, Application.Handle);[/color] end else Form1.Hide; //OnDesktop.. SetWindowLong(Handle, GWL_HWNDPARENT, 0); end; |
versuch mal nach den SetWindowLong Zeilen folgende Zeile:
SetWindowPos(handle, 0, 0, 0, 0, 0, SWP_FRAMECHANGED or SWP_NOMOVE or SWP_NOSIZE or SWP_NOZORDER or SWP_NOCOPYBITS); ich brauch das immer, wenn ich den Style eines Controls verändere, um dieses zu "refreshen". vielleicht muss man dies bei GWL_HWNDPARENT auch machen. Gruß Frank |
Hallo Frank
Hat leider auch nicht geholfen!ich weiß da nich mehr weiter.. :cry: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:02 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