1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| Option Explicit
Private Declare Function SetWindowPos Lib "User32" ( _
ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _
ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, _
ByVal wFlags As Long) As Long
'hwnd : descripteur (issu de Microsoft Windows) de la fenêtre à déplacer.
'hWndInsertAfter : positionnement axe Z (profondeur, avant plan/arriere plan),une des 4 constantes suivantes
Const HWND_NOTOPMOST = -2 ' Ne pas modifier son placement d'ordre Z
Const HWND_TOPMOST = -1 ' Mettre la fenêtre au plus haut de l'ordre Z (avant plan, recouvre la barre des tâches de windows), de façon permanente.
Const HWND_TOP = 0 ' Mettre la fenêtre au plus haut de l'ordre Z (avant plan, ne recouvre pas la barre des tâches de windows).
Const HWND_BOTTOM = 1 ' Mettre la fenêtre au plus bas de l'ordre Z (arriere plan).
'x : coordonnée horizontal du coin supérieur gauche de la fenêtre.
'y : coordonnée vertical du coin supérieur gauche de la fenêtre.
'cx : coordonnée horizontal du coin inférieur droit de la fenêtre.
'cy : coordonnée vertical du coin inférieur droit de la fenêtre.
'wFlags : comment déplacer/dessiner la fenêtre, aucune ou plusieurs des constantes suivantes
Const SWP_NOSIZE = &H1 ' Ne pas redimensionner la fenêtre.
Const SWP_NOMOVE = &H2 ' Ne pas déplacer la fenêtre.
Const SWP_NOZORDER = &H4 ' Ne pas changer la position de la fenêtre dans l'ordre Z.
Const SWP_NOACTIVATE = &H10 ' Ne faites pas la fenêtre active après l'avoir déplacé si ce ne est déjà la fenêtre active.
Const SWP_DRAWFRAME = &H20 ' Redessiner entièrement la fenêtre dans sa nouvelle position.
Const SWP_SHOWWINDOW = &H40 ' Afficher la fenêtre si elle est masquée.
Const SWP_HIDEWINDOW = &H80 ' Cacher la fenêtre de l'écran.
Private Sub Command1_Click()
Dim RetVal As Long
RetVal = SetWindowPos(Me.hwnd, HWND_TOPMOST, 150, 50, 500, 500, SWP_DRAWFRAME)
'RetVal = SetWindowPos(Me.hwnd, HWND_TOP, 150, 50, 500, 500, SWP_DRAWFRAME)
End Sub |
Partager