Page 1 sur 1
[R] Bloquer la possibilité de déplacer une GUI
Posté : mer. 05 déc. 2012 06:58
par Ks10
Bonjour,
J'ai fait quelques recherches sur le forum mais je ne trouve pas de sujet clair qui montre comment bloquer le déplacement d'une GUI.
Mes recherches ce sont porter sur la commande :
GuiCtrlSetPos
J'ai également fait quelques recherches sur Koda en manipulant les propriétés de la fenêtre mais je n'est pas trouver.
Je vous remercie d'avance
Cordialement
Re: [..] Bloquer la possibilité de déplacer une GUI
Posté : mer. 05 déc. 2012 07:31
par Tlem
Je n'ai pas le temps ce matin de faire les recherches pour vous, mais dans mes souvenirs, ce sujet à déjà été abordé. Regardez peut être un sujet similaire qui permet d'interdire le redimensionnement de la fenêtre.

Re: [..] Bloquer la possibilité de déplacer une GUI
Posté : mer. 05 déc. 2012 09:23
par mikell
Exact, réponse donnée par Iste (je crois)
► Afficher le texte
Code : Tout sélectionner
;http://msdn.microsoft.com/en-us/library/windows/desktop/ms646360%28v=vs.85%29.aspx
#Include <GUIConstantsEx.au3>
;~ Global Const $WM_SYSCOMMAND = 0x0112
Global Const $SC_MOVE = 0xF010
Global Const $SC_SIZE = 0xF000
Global Const $SC_CLOSE = 0xF060
Global Const $SC_MAXIMIZE = 0xF030
Global Const $SC_MINIMIZE = 0xF020
$gui = GUICreate("")
GUISetState()
GUIRegisterMsg(0x0112, "OnSysCommand")
While GUIGetMsg() <> $GUI_EVENT_CLOSE
WEnd
Func OnSysCommand($hWnd, $Msg, $wParam, $lParam)
$test = BitAND($wParam, 0xFFF0)
If $test = 0xF010 OR $test = 0xF020 Then
Return False
EndIf
Return $GUI_RUNDEFMSG
EndFunc
Re: [..] Bloquer la possibilité de déplacer une GUI
Posté : mer. 05 déc. 2012 10:53
par jguinch
Bonjour
La solution à Mickell fonctionne très bien.
Mais si on veut réduire la fenêtre ?
On peut faire ça aussi ?
► Afficher le texte
Code : Tout sélectionner
#Include <GUIConstantsEx.au3>
Global Const $WM_MOVE = 0x0003
$gui = GUICreate("")
GUISetState()
Global $position = WinGetpos($gui)
GUIRegisterMsg($WM_MOVE, "ON_WM_MOVE")
While GUIGetMsg() <> $GUI_EVENT_CLOSE
WEnd
Func ON_WM_MOVE($hWnd, $Msg, $wParam, $lParam)
; On remet la fenêtre à sa place d'origine à chaque fois qu'on veut la déplacer
WinMove($hWnd, "", $position[0], $position[1])
EndFunc
Re: [..] Bloquer la possibilité de déplacer une GUI
Posté : mer. 05 déc. 2012 11:35
par Ks10
Merci pour vos réponses , cela fonctionne !
Sujet résolue.
Re: [R] Bloquer la possibilité de déplacer une GUI
Posté : mer. 05 déc. 2012 13:32
par mikell
jguinchard a écrit :Mais si on veut réduire la fenêtre ?
Tu as regardé mon code trop vite

regarde les constantes en tête de script
Code : Tout sélectionner
Func OnSysCommand($hWnd, $Msg, $wParam, $lParam)
$test = BitAND($wParam, 0xFFF0)
If $test = [color=#FF0000]0xF010[/color] [b]OR[/b] $test = [color=#FF0000]0xF020[/color] Then [color=#FF0000]; $SC_[b]MOVE[/b] = 0xF010, $SC_[b]MINIMIZE[/b] = 0xF020[/color]
Return False
EndIf
Return $GUI_RUNDEFMSG
EndFunc
Re: [R] Bloquer la possibilité de déplacer une GUI
Posté : mer. 05 déc. 2012 17:20
par jguinch
Oui, j'ai lu trop vite.
Finalement, c'était nickel... comme d'hab
