Page 1 sur 1
[..] GUI Delete
Posté : jeu. 23 juin 2011 19:22
par yanius
Bonjour à tous !!
Je voulais savoir comment supprimer une GUI sans pour autant arrêter le script !
Existe une macro pour GuiSetState, du genre @GUI_Delete ?
Merci d'avance pour votre réponse !

Re: [..] GUI Delete
Posté : jeu. 23 juin 2011 19:31
par TommyDDR
Ne vous convient pas ? (Donnez nous le code, ca peut aider

)
Re: [..] GUI Delete
Posté : jeu. 23 juin 2011 23:46
par Tlem
Attention, la suppression d'une GUI, supprime aussi tout les éléments qui en dépendent. Cela implique la re-création de l'ensemble si vous voulez la ré-afficher.
Il est rare d'utiliser un
GUIDelete(), quand un simple
GUISetState(@SW_Hide, $MaGUI) suffit largement pour cacher la fenêtre puis un
GUISetState(@SW_Show, $MaGUI) pour la faire ré-apparaitre.

Re: [..] GUI Delete
Posté : ven. 24 juin 2011 13:05
par yanius
@TommyDDR
Merci beaucoup !
@Tlem
En effet,

, mais je vous donne le bout de mon code pour mieux comprendre ma demande

:
► Afficher le texte
Code : Tout sélectionner
HotKeySet("^!{DEL}", "Function")
Func Function()
Global $Form1 = GUICreate("Fenêtre", 420, 258, 422, 350)
Global $Pic1 = GUICtrlCreatePic("C:\Users\Collégien\Pictures\Sans titre.jpg", 0, 0, 417, 257, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
If _IsPressed("0D") Then GUIDelete()
WEnd
EndFunc
Dans ce cas, masquer la fenêtre n'est pas le plus approprié pour mon script (Il re-créera à chaque appel la fenêtre !).
Y a t-il une erreur dans mon bout de script ?
Re: [..] GUI Delete
Posté : ven. 24 juin 2011 15:15
par TommyDDR
1) HotKeySet("^!{DEL}") Vous vous attribuez Ctrl Alt Supr ?? Oo (c'est meme impossible avec windows il me semble)
2) Cadeau (Même si un while(true) dans une fonction est à proscrire) :
► Afficher le textecode
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
#include <Misc.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
HotKeySet("^!{DEL}", "Function")
Global $Form1 = GUICreate("Fenêtre", 420, 258, 422, 350)
Global $Pic1 = GUICtrlCreatePic("C:\Users\Collégien\Pictures\Sans titre.jpg", 0, 0, 417, 257, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
While(True)
Sleep(10)
WEnd
Func Function()
GUISetState(@SW_SHOW, $Form1)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
If _IsPressed("0D") Then
GUISetState(@SW_HIDE, $Form1)
EndIf
WEnd
EndFunc