SetWindowTopMost(hWin, True); // hWin =
Handle des "StayOnTop" Fensters ; True = Top / False = NotTop
und ich glaub da gab es noch ein ResetTopMost o.ä., bitte Delphi Hilfe konsultieren!
Delphi-Quellcode:
function SetWindowTopMost(hWnd: HWND; bTopMost: boolean): boolean;
begin
Result := SetWindowPos(hWnd, HWND_NOTOPMOST + WORD(bTopMost), 0, 0, 0, 0,
SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE);
end;
Nachtrag:
Wenn Du experimentier-freudig bist kannst Du mit folgendem Code herumspielen,
der sollte Bewirken das mein Programm im Vordergrund vor allen anderen steht.
Wird bei mir im OnCreate Event aufgerufen.
Delphi-Quellcode:
function GetSysFocus: Integer;
var
hFgWin, FgThreadID{, hFocusWin}: Integer;
begin
hFgWin := GetForegroundWindow;
FgThreadID := GetWindowThreadProcessID(hFgWin, nil);
if AttachThreadInput(GetCurrentThreadID, FgThreadID, True) then
begin
// hFocusWin := GetFocus;
Result := GetFocus;
AttachThreadInput(GetCurrentThreadID, FgThreadID, False);
end
else
Result := GetFocus;
end;