Modifie la taille, la position, et l'ordre Z d'une fenêtre enfant, pop-up, ou de haut niveau
#include <WinAPISysWin.au3>
_WinAPI_SetWindowPos ( $hWnd, $hAfter, $iX, $iY, $iCX, $iCY, $iFlags )
$hWnd | Handle de la fenêtre |
$hAfter | Spécifie la fenêtre précédente de la fenêtre à placer dans l'ordre Z. Ce paramètre doit être un handle de fenêtre ou l'une des valeurs suivantes: $HWND_BOTTOM - Place la fenêtre en bas de l'ordre Z $HWND_NOTOPMOST - Place la fenêtre au-dessus de toutes les fenêtres qui ne sont pas de niveau supérieur $HWND_TOP - Place la fenêtre en haut de l'ordre Z $HWND_TOPMOST - Place la fenêtre au-dessus de toutes les fenêtres de niveau supérieur |
$iX | Indique la nouvelle position du coté gauche de la fenêtre |
$iY | Indique la nouvelle position du coté supérieur de la fenêtre |
$iCX | Indique la nouvelle largeur de la fenêtre, en pixels |
$iCY | Indique la nouvelle hauteur de la fenêtre, en pixels |
$iFlags | Spécifie les flags de dimensionnement et de positionnement de la fenêtre: $SWP_DRAWFRAME - Dessine un cadre autour de la fenêtre $SWP_FRAMECHANGED - Envoie un message $WM_NCCALCSIZE à la fenêtre, même si la taille de la fenêtre n'a pas changé $SWP_HIDEWINDOW - Cache la fenêtre $SWP_NOACTIVATE - N'a pas activé la fenêtre $SWP_NOCOPYBITS - Rejète tout le contenu de la zone cliente $SWP_NOMOVE - Conserve la position actuelle $SWP_NOOWNERZORDER - Ne change pas la position de la fenêtre propriétaire dans l'ordre Z $SWP_NOREDRAW - Ne redessine pas les changements $SWP_NOREPOSITION - Pareil que le flag $SWP_NOOWNERZORDER $SWP_NOSENDCHANGING - Empêche la fenêtre de recevoir $WM_WINDOWPOSCHANGING $SWP_NOSIZE - Conserve la taille actuelle $SWP_NOZORDER - Conserve l'ordre Z. $SWP_SHOWWINDOW - Affiche la fenêtre |
Succès: | Retourne True |
Échec: | Retourne False, appelez _WinAPI_GetLastError() pour obtenir des informations sur l'erreur. |
Les constantes ci-dessus nécessitent Constants.au3
Consultez SetWindowPos dans la librairie MSDN.
#include <MsgBoxConstants.au3> #include <WinAPISysWin.au3> #include <WindowsConstants.au3> Example() Func Example() ; Affecte une variable locale avec le handle de la fenêtre du Bloc-notes Local $hWnd = WinGetHandle("[CLASS:Notepad]") ; Si la fenêtre n'existe pas, affiche un message et retourne Faux. If @error Then MsgBox($MB_SYSTEMMODAL, "", "Fenêtre Notepad non trouvé!") Return False EndIf ; Affecte une variable locale le style de la fenêtre du Bloc-notes. Local $iStyle = _WinAPI_GetWindowLong($hWnd, $GWL_STYLE) ; Retire du style de fenêtre les styles MAXIMIZEBOX, MINIMIZEBOX et SIZEBOX. $iStyle = BitXOR($iStyle, $WS_MAXIMIZEBOX, $WS_MINIMIZEBOX, $WS_SIZEBOX) ; Définit le style de la fenêtre. _WinAPI_SetWindowLong($hWnd, $GWL_STYLE, $iStyle) ; Applique le style _WinAPI_SetWindowPos($hWnd, $HWND_TOP, 0, 0, 0, 0, BitOR($SWP_FRAMECHANGED, $SWP_NOMOVE, $SWP_NOSIZE)) EndFunc ;==>Example