Page 1 sur 1
[R] Mode Envent empêche GuiCtrlsetState()
Posté : mar. 03 août 2010 22:02
par Sh4dows
Salut à tous,
Est il normale que le mode event :
Empêche le GuiCtrlSetState.
Je cherche à désactiver mon Contrôle si l'utilisateur clic sur un bouton, mais condition ou pas rien n'y fait il est désactivé dès le départ !
Mon code :
Code : Tout sélectionner
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)
Global $Form1 = GUICreate("Gui", 499, 281, 449, 182)
Global $Button1 = GUICtrlCreateButton("Touch", 352, 248, 137, 25, $WS_GROUP)
GUICtrlSetOnEvent($Button1, "_CH")
GUISetState(@SW_SHOW)
While 1
Sleep(1000)
WEnd
Func _CH()
GUICtrlSetState($Button1, $GUI_DISABLE)
EndFunc
Merci d'avance pour votre aide !
Re: [..] Mode Envent empêche GuiCtrlsetState()
Posté : mar. 03 août 2010 22:51
par sylvanie
étrange
chez moi le bouton est actif au lancement, puis il se désactive en cliquant dessus ... en gros ça marche
Re: [..] Mode Envent empêche GuiCtrlsetState()
Posté : mar. 03 août 2010 22:57
par Sh4dows
En effet étrange ! As tu un code pour faire des tests ?
Re: [..] Mode Envent empêche GuiCtrlsetState()
Posté : mar. 03 août 2010 22:59
par Sh4dows
Maintenant cela semble marcher, c'est à ne rien y comprendre

Re: [..] Mode Envent empêche GuiCtrlsetState()
Posté : mar. 03 août 2010 23:02
par Tlem
Votre code fonctionne parfaitement ...
Regardez si vous n'avez pas un autre problème ailleurs.
Re: [..] Mode Envent empêche GuiCtrlsetState()
Posté : mar. 03 août 2010 23:11
par Sh4dows
Si effectivement, j'ai mis du temps a m'en rendre compte mais une fonction n'allait pas !
Vous pouvez donc supprimer ce Topic qui je pense n'apportera rien aux autre membres.
Pour le fin mot de l'histoire une autre fonction contre disait la première ce qui créer donc un conflit

Re: [..] Mode Envent empêche GuiCtrlsetState()
Posté : mar. 03 août 2010 23:20
par Tlem
Si vous expliquez ce qui posait problème, cela permettrait à d'autres utilisateurs de ne pas faire la même erreur.

Re: [..] Mode Envent empêche GuiCtrlsetState()
Posté : mar. 03 août 2010 23:38
par Sh4dows
Dans ce cas expliquons...
Voici le code donnée au départ !
Code : Tout sélectionner
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)
Global $Form1 = GUICreate("Gui", 499, 281, 449, 182)
Global $Button1 = GUICtrlCreateButton("Touch", 352, 248, 137, 25, $WS_GROUP)
GUICtrlSetOnEvent($Button1, "_CH")
GUISetState(@SW_SHOW)
While 1
Sleep(1000)
WEnd
Func _CH()
GUICtrlSetState($Button1, $GUI_DISABLE)
EndFunc
Je n'avais évidemment pas donnée tous le code jugeant cela peut nécessaire, mais dans mon code avant l'appelle de ma fonction _CH, il en existait une autre :
Code : Tout sélectionner
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)
[color=#00FF00]Global $USERNAME = ""[/color]
Global $Form1 = GUICreate("Gui", 499, 281, 449, 182)
Global $Input1 = GUICtrlCreateInput("", 128, 166, 345, 21)
Global $Button1 = GUICtrlCreateButton("Touch", 352, 248, 137, 25, $WS_GROUP)
[color=#00FF00]_SH4DOWS(GUICtrlRead($Input1))[/color]
;...
GUICtrlSetOnEvent($Button1, "_CH")
GUISetState(@SW_SHOW)
While 1
Sleep(1000)
WEnd
Func _CH()
GUICtrlSetState($Button1, $GUI_DISABLE)
GUICtrlSetState($Input1, $GUI_DISABLE)
EndFunc
[color=#00FF00]Func _SH4DOWS($user)
If $USERNAME = "" Then
Exit
Else
_CH()
EndIf[/color]
Mon code ce présentait comme si dessous donc nous avions une fonction d'appeler pour rien et la variable $USERNAME en Global qui causait le gros conflit car sa valeur était toujours vide !!
Re: [..] Mode Envent empêche GuiCtrlsetState()
Posté : mer. 04 août 2010 00:04
par Tlem
Mais en l'occurrence, cela ne bloquait pas le GUICtrlSetOnEvent.
Cela fermait tout simplement votre script ...
Re: [..] Mode Envent empêche GuiCtrlsetState()
Posté : mer. 04 août 2010 08:32
par Sh4dows
C'est une reconstitution, j'ai zappé exactement le code
Bon aller [R]