Quel sont les caractéristiques pour ouvrir une nouvelle fenêtre à partir d'un boutons svp
Biensur quand on clique sur le bouton , une nouvelle fenêtre apparaît sens fermer la première

Merci enrevoir
Code : Tout sélectionner
Enumeration
#Main
#Fenetre1
#Fenetre2
#Fenetre3
#Fenetre4
#Fenetre5
EndEnumeration
Enumeration
#Bouton1
#Bouton2
#Bouton3
#Bouton4
#Bouton5
#BoutonFenetre1
#BoutonFenetre2
#BoutonFenetre3
#BoutonFenetre4
#BoutonFenetre5
#Text
EndEnumeration
Procedure OpenWin_Main()
If OpenWindow(#Main, 0, 0, 220, 200, "Fenetres", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
If CreateGadgetList(WindowID(0))
ButtonGadget(#Bouton1, 10, 10, 200, 20, "Ouvrir fenêtre 1")
ButtonGadget(#Bouton2, 10, 40, 200, 20, "Ouvrir fenêtre 2")
ButtonGadget(#Bouton3, 10, 70, 200, 20, "Ouvrir fenêtre 3")
ButtonGadget(#Bouton4, 10, 100, 200, 20, "Ouvrir fenêtre 4")
ButtonGadget(#Bouton5, 10, 130, 200, 20, "Ouvrir fenêtre 5")
TextGadget(#Text, 10, 180, 200, 20, "Pas de fenêtre ouverte", #PB_Text_Center)
EndIf
EndIf
EndProcedure
Procedure OpenWin_1()
If OpenWindow(#Fenetre1, 0, 0, 220, 40, "Fenetre 1", #PB_Window_SystemMenu, WindowID(#Main))
If CreateGadgetList(WindowID(#Fenetre1))
ButtonGadget(#BoutonFenetre1, 10, 10, 200, 20, "Fermer fenêtre 1")
ProcedureReturn #True
EndIf
EndIf
EndProcedure
Procedure OpenWin_2()
If OpenWindow(#Fenetre2, 0, 70, 220, 40, "Fenetre 2", #PB_Window_SystemMenu, WindowID(#Main))
If CreateGadgetList(WindowID(#Fenetre2))
ButtonGadget(#BoutonFenetre2, 10, 10, 200, 20, "Fermer fenêtre 2")
ProcedureReturn #True
EndIf
EndIf
EndProcedure
Procedure OpenWin_3()
If OpenWindow(#Fenetre3, 0, 140, 220, 40, "Fenetre 3", #PB_Window_SystemMenu, WindowID(#Main))
If CreateGadgetList(WindowID(#Fenetre3))
ButtonGadget(#BoutonFenetre3, 10, 10, 200, 20, "Fermer fenêtre 3")
ProcedureReturn #True
EndIf
EndIf
EndProcedure
Procedure OpenWin_4()
If OpenWindow(#Fenetre4, 0, 210, 220, 40, "Fenetre 4", #PB_Window_SystemMenu, WindowID(#Main))
If CreateGadgetList(WindowID(#Fenetre4))
ButtonGadget(#BoutonFenetre4, 10, 10, 200, 20, "Fermer fenêtre 4")
ProcedureReturn #True
EndIf
EndIf
EndProcedure
Procedure OpenWin_5()
If OpenWindow(#Fenetre5, 0, 280, 220, 40, "Fenetre 5", #PB_Window_SystemMenu, WindowID(#Main))
If CreateGadgetList(WindowID(#Fenetre5))
ButtonGadget(#BoutonFenetre5, 10, 10, 200, 20, "Fermer fenêtre 5")
ProcedureReturn #True
EndIf
EndIf
EndProcedure
OpenWin_Main()
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Select EventGadget()
;/ Ouverture des fenêtres "fille"
Case #Bouton1
If OpenWin_1()
SetGadgetText(#Text, "Vous avez ouvert la fenêtre 1")
EndIf
Case #Bouton2
If OpenWin_2()
SetGadgetText(#Text, "Vous avez ouvert la fenêtre 2")
EndIf
Case #Bouton3
If OpenWin_3()
SetGadgetText(#Text, "Vous avez ouvert la fenêtre 3")
EndIf
Case #Bouton4
If OpenWin_4()
SetGadgetText(#Text, "Vous avez ouvert la fenêtre 4")
EndIf
Case #Bouton5
If OpenWin_5()
SetGadgetText(#Text, "Vous avez ouvert la fenêtre 5")
EndIf
;/ Femeture des fenêtres "fille" par le bouton
Case #BoutonFenetre1
SetGadgetText(#Text, "Vous avez fermé la fenêtre 1")
CloseWindow(#Fenetre1)
Case #BoutonFenetre2
SetGadgetText(#Text, "Vous avez fermé la fenêtre 2")
CloseWindow(#Fenetre2)
Case #BoutonFenetre3
SetGadgetText(#Text, "Vous avez fermé la fenêtre 3")
CloseWindow(#Fenetre3)
Case #BoutonFenetre4
SetGadgetText(#Text, "Vous avez fermé la fenêtre 4")
CloseWindow(#Fenetre4)
Case #BoutonFenetre5
SetGadgetText(#Text, "Vous avez fermé la fenêtre 5")
CloseWindow(#Fenetre5)
EndSelect
Case #PB_Event_CloseWindow
Select EventWindow()
;/ Fermeture des fenêtres "fille" par l'icône [X]
Case #Fenetre1
SetGadgetText(#Text, "Vous avez fermé la fenêtre 1")
CloseWindow(#Fenetre1)
Case #Fenetre2
SetGadgetText(#Text, "Vous avez fermé la fenêtre 2")
CloseWindow(#Fenetre2)
Case #Fenetre3
SetGadgetText(#Text, "Vous avez fermé la fenêtre 3")
CloseWindow(#Fenetre3)
Case #Fenetre4
SetGadgetText(#Text, "Vous avez fermé la fenêtre 4")
CloseWindow(#Fenetre4)
Case #Fenetre5
SetGadgetText(#Text, "Vous avez fermé la fenêtre 5")
CloseWindow(#Fenetre5)
;/ Fermeture de la fenêtre principale (et fin du programme)
Case #Main
Quit = #True
EndSelect
EndSelect
Until Quit
End
Code : Tout sélectionner
Enumeration
#fenetre_main
#fenetre_fille
EndEnumeration
Enumeration
#bouton_open
#bouton_ouvrir
#bouton_fermer
EndEnumeration
Procedure message()
MessageRequester("Information","Fermer la fenetre svp",#PB_MessageRequester_Ok)
EndProcedure
Procedure main()
If OpenWindow(#fenetre_main,0,0,300,200,"test de fenetre",#PB_Window_MinimizeGadget|#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_TitleBar)
If CreateGadgetList(WindowID(0))
ButtonGadget(#bouton_open,50,50,120,30,"Ouvrir fenetre")
EndIf
EndIf
EndProcedure
Procedure fenetrefille()
If OpenWindow(#fenetre_fille,0,0,200,120,"Fenetre_fille",#PB_Window_ScreenCentered)
If CreateGadgetList(WindowID(#fenetre_fille))
ButtonGadget(#bouton_ouvrir,50,10,120,30,"Ouvrir")
ButtonGadget(#bouton_fermer,50,50,120,30,"Fermer")
ProcedureReturn #True
EndIf
EndIf
EndProcedure
main()
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Select EventGadget()
Case #bouton_open:fenetrefille()
Case #bouton_ouvrir:message()
CloseWindow(#fenetre_fille)
Case #bouton_fermer
CloseWindow(#fenetre_fille)
EndSelect
Case #PB_Event_CloseWindow
Select EventWindow()
Case #fenetre_main
Quit=#True
EndSelect
EndSelect
Until Quit
End