Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Ein Fenster immer oben anzeigen??? (https://www.delphipraxis.net/48504-ein-fenster-immer-oben-anzeigen.html)

romber 26. Jun 2005 15:07


Ein Fenster immer oben anzeigen???
 
Hallo!

Wie kann ich ein Fenster immer obern über allen anderen Fenstern anzeigen, auch über fremden fenstern? fsStayOnTop ist nur ein im eigenen Programm wirksam.

Nils_13 26. Jun 2005 15:10

Re: Ein Fenster immer oben anzeigen???
 
Delphi-Quellcode:
procedure ShowMe;
var
  Th1, Th2: Cardinal;
begin
  Th1 := GetCurrentThreadId;
  Th2 := GetWindowThreadProcessId(GetForegroundWindow, nil);
  AttachThreadInput(Th2, Th1, true);
  try
    SetForegroundWindow(Application.Handle);
  finally
    AttachThreadInput(Th2, Th1, false);
  end;
end;
Damit must du halt irgend etwas anfangen ... .

JasonDX 26. Jun 2005 15:46

Re: Ein Fenster immer oben anzeigen???
 
@Nils: weißt du überhaupt, was dein Code macht? Ich glaube nicht, sonst hättest du ihn nicht hier reingepostet :roll: . Er kommt nämlich aus diesem Post, und wenn du ihn dir genau durchliest, wirst du merken, dass er das Fenster nur nach vorne holt, aber es nicht zu einem Top-Window macht :roll:

@Topic: Das geht per WinAPI:
Delphi-Quellcode:
  SetWindowPos(Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE);
oder noch besser:
Delphi-Quellcode:
var
  wp: TWindowPlacement;
//...
  GetWindowPlacement(Handle, @wp);
  with wp do
    with rcNormalPosition do
      SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Right, Bottom, flags);
Die letzte Möglichkeit ist besser, da bestimmte Werte des Forms afaik nicht verändert werden.


[edit]Edit: Link ausgebessert[/edit]

romber 26. Jun 2005 17:05

Re: Ein Fenster immer oben anzeigen???
 
Danke! Probiere ich gleich aus!


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:10 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