Page 1 sur 1

[R] Multi fenêtres

Posté : lun. 11 août 2008 19:41
par ValWatt
Bonjour,

Je cherche un programme qui
-affiche une 2ième fenêtre (je sais faire)
-et qui ferme sur demande ($GUI_EVENT_CLOSE) cette 2ième fenêtre tout en laissant visible la 1ère (c'est là que je ne sais pas).

ci dessous exemple du code :

Programme Parent.au3

Code : Tout sélectionner

#Region ### START Koda GUI section ### Form=
$ParentWin = GUICreate("  Parent", 251, 307, 193, 125)
$Combo1 = GUICtrlCreateCombo("", 48, 64, 129, 25)
GUICtrlSetData(-1, "A|B|C|D|E")
$Combo2 = GUICtrlCreateCombo("", 48, 128, 129, 25)
GUICtrlSetData(-1, "1|2|3|4|5")
$Button1 = GUICtrlCreateButton("Button1", 72, 208, 81, 33, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        case $Button1
            $T=GUICtrlRead($Combo1)
            $N=GUICtrlRead($Combo2)
            ;GUISwitch($parent2)
            trans($T,$N)
    EndSwitch
WEnd

Func trans($T,$N)
    #include<Enf.au3>
EndFunc

Programme Enf.au3

Code : Tout sélectionner

#include <GUIConstants.au3>

#Region ### START Koda GUI section ### Form=
$parent2 = GUICreate("Enfant", 633, 447, 193, 125)
$Label1 = GUICtrlCreateLabel("Fenêtre enfant", 64, 48, 140, 34)
GUICtrlSetFont(-1, 14, 800, 0, "Papyrus")
GUICtrlSetColor(-1, 0xFF0000)
$Input1 = GUICtrlCreateInput("Input1", 56, 86, 137, 21)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

$M=$N & "-" & $T
GUICtrlSetData($Input1,$M)
While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            WinKill("[ACTIVE]", "")
            GUISwitch($ParentWin)
    EndSwitch
WEnd

Re: Multi fenêtres

Posté : lun. 11 août 2008 21:17
par SagePourpre
Voilà.
► Afficher le texte
Il ne te reste plus qu'à adapter le code selon ce que tu veux faire...

Re: Multi fenêtres

Posté : lun. 11 août 2008 22:45
par ValWatt
Merci.

Après plusieurs recherches, j'ai trouvé une solution :

Code : Tout sélectionner

[color=#BF0000]Code Parent.au3 :[/color]
Region ### START Koda GUI section ### Form=
$ParentWin = GUICreate("Parent", 251, 307, 193, 125)
$Combo1 = GUICtrlCreateCombo("", 48, 64, 129, 25)
GUICtrlSetData(-1, "A|B|C|D|E")
$Combo2 = GUICtrlCreateCombo("", 48, 128, 129, 25)
GUICtrlSetData(-1, "1|2|3|4|5")
$Button1 = GUICtrlCreateButton("Enfant", 32, 208, 81, 33, 0)
$BtnQuitter = GUICtrlCreateButton("Quitter", 122, 208, 81, 33, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###


Do
   $msg=GUIGetMsg()
   Switch $msg
                        case $Button1
            $T=GUICtrlRead($Combo1)
            $N=GUICtrlRead($Combo2)
            trans($T,$N)
        Case $BtnQuitter
            Exit
    
     EndSwitch
until $msg = $GUI_EVENT_CLOSE

Func trans($T,$N)
    #include<Enf.au3>
EndFunc

[color=#800000]Code Enfant.au3 :[/color]
#include <GUIConstants.au3>

#Region ### START Koda GUI section ### Form=
$parent2 = GUICreate("Enfant", 633, 447, 193, 125,$DS_MODALFRAME)
$Label1 = GUICtrlCreateLabel("Fenêtre enfant", 64, 48, 140, 34)
GUICtrlSetFont(-1, 14, 800, 0, "Papyrus")
GUICtrlSetColor(-1, 0xFF0000)
$Input1 = GUICtrlCreateInput("Input1", 56, 86, 137, 21)
$Button2 = GUICtrlCreateButton("Fermer", 72, 208, 81, 33, 0)

GUISetState(@SW_SHOW,$parent2)
#EndRegion ### END Koda GUI section ###

$M=$N & "-" & $T
GUICtrlSetData($Input1,$M)

Do
        $msg2=GUIGetMsg()
        if $msg2=$Button2 then 
           MsgBox(0,"Btn","OK")
                    WinSetState("Enfant", "", @SW_HIDE)
        EndIf
until $msg2 = $Button2