Cacher une fenêtre et en montrer une autre

    Publicités

Users Who Are Viewing This Thread (Total: 0, Members: 0, Guests: 0)

Dagger

PRAISE OUR LORD HELIX
V
Mar 11, 2011
3,147
0
942
Toulouse
Bonjour a tous, aujourd'hui je vais vous montrez comment cacher une fenêtre et en montrer une autres. Pour cela nous allons utiliser les fonctions "@SW_SHOW" qui permet d'afficher une fenêtre et la fonction "@SW_HIDE" qui permet de ne pas afficher une fenêtres au lancement du programme.

Bien nous allons commencer la pratique, nous allons donc créer deux fenêtres une qui aura le statut "@SW_SHOW" et la seconde aura le statut "@SW_HIDE". Une fenêtres aura deux boutons, un qui affichera les deux fenêtres et l'autre cachera la fentre et affichera la seconde. Pareil pour la deuxième fenêtre, 1 bouton qui affichera les deux fenetres et un autre qui cachera la fenêtre et affichera la seconde.

Voici le code de depart :

PHP:
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Global $Form1 = GUICreate("Form1", 117, 84, 1068, 285)
Global $Button1 = GUICtrlCreateButton("Tous montrer", 8, 8, 75, 25, $WS_GROUP)
Global $Button2 = GUICtrlCreateButton("Montrer 2eme fenetre", 8, 40, 75, 25, $WS_GROUP)
GUISetState(@SW_SHOW)

Global $Form2 = GUICreate("Interface 1", 117, 81, 1068, 507)
Global $Button3 = GUICtrlCreateButton("Tous montrer", 8, 8, 75, 25, $WS_GROUP)
Global $Button4 = GUICtrlCreateButton("Montrer 1 fentre", 8, 40, 75, 25, $WS_GROUP)
GUISetState(@SW_HIDE)

While 1
 $nMsg = GUIGetMsg()
 Switch $nMsg
  Case $GUI_EVENT_CLOSE
   Exit

 EndSwitch
WEnd

Maintenant occupons nous des boutons de la première fenêtre. Avec le premier boutons on va afficher les deux fenêtres.

Ajoutons donc ceci:

PHP:
Case $Button1
	   GUISetState(@SW_SHOW, $Form2)

Maintenant occupons nous du deuxième boutons de la première fenêtre, nous voulons la cacher et faire apparaitre la deuxième, nous allons donc rajouter ceci:

PHP:
Case $Button2
			GUISetState(@SW_HIDE, $Form1)
			GUISetState(@SW_SHOW, $Form2)

Bon occupons nous maintenant de la deuxième fenêtres nous avons donc pour le premier bouton la même chose que le premier bouton de la première fenêtre sauf que nous allons mettre "Form1 au lieu de "Form2", ce qui donne sa:

PHP:
Case $Button3
			GUISetState(@SW_SHOW, $Form1)

Et pour le dernier bouton nous allons donc faire pareil que pour le deuxième bouton de la première fenêtres mais a l'inverse. Ce qui nous donne ceci:

PHP:
		Case $Button4
			GUISetState(@SW_HIDE, $Form2)
			GUISetState(@SW_SHOW, $Form1)

Ce qui donne au final ceci:

PHP:
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Global $Form1 = GUICreate("Form1", 117, 84, 1068, 285)
Global $Button1 = GUICtrlCreateButton("Tous montrer", 8, 8, 75, 25, $WS_GROUP)
Global $Button2 = GUICtrlCreateButton("Montrer 2eme fenetre", 8, 40, 75, 25, $WS_GROUP)
GUISetState(@SW_SHOW)

Global $Form2 = GUICreate("Interface 1", 117, 81, 1068, 507)
Global $Button3 = GUICtrlCreateButton("Tous montrer", 8, 8, 75, 25, $WS_GROUP)
Global $Button4 = GUICtrlCreateButton("Montrer 1 fentre", 8, 40, 75, 25, $WS_GROUP)
GUISetState(@SW_HIDE)

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Button1
			GUISetState(@SW_SHOW, $Form2)
		Case $Button2
			GUISetState(@SW_HIDE, $Form1)
			GUISetState(@SW_SHOW, $Form2)
		Case $Button3
			GUISetState(@SW_SHOW, $Form1)
		Case $Button4
			GUISetState(@SW_HIDE, $Form2)
			GUISetState(@SW_SHOW, $Form1)
	EndSwitch
WEnd

Voili voilou a+ =D​