function BringWindowToTopEx(hWnd: HWND): Boolean; begin if IsIconic(hWnd) then ShowWindow(hWnd, SW_RESTORE); if GetForegroundWindow <> hWnd then SetForegroundWindow(hWnd);//enabled //BringWindowToTop(hWnd);//not enabled //ForceForegroundWindow(hWnd);//enabled {SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE); SetWindowPos(hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE);//enabled} //SwitchToThisWindow(hWnd, True);//enabled Result := GetForegroundWindow = hWnd; end;
function BringWindowToTopMost(hWnd: HWND; bTopMost: Boolean): Boolean; begin if IsIconic(hWnd) then ShowWindow(hWnd, SW_RESTORE); if bTopMost then SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE) else SetWindowPos(hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE); end;
function BringWindowToTopXY(hWnd: HWND; X, Y: Integer; hWndInsertAfter: HWND): Boolean; begin Result := BringWindowToTopEx(hWnd); Result := SetWindowPos(hWnd, hWndInsertAfter, X, Y, 0, 0, SWP_NOSIZE) and Result; end;
|
请发表评论