Ce n'est pas ce que fait ton code.
Exemple de fenêtre modale
Code : Tout sélectionner
Procedure ModalWindow()
OpenWindow(1, 0, 0, 300, 200, "Fenetre modale", #PB_Window_SystemMenu | #PB_Window_WindowCentered, WindowID(0))
DisableWindow(0, #True)
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
CloseWindow(1)
DisableWindow(0, #False)
Break
EndSelect
ForEver
EndProcedure
OpenWindow(0, #PB_Ignore, #PB_Ignore, 640, 480, "Main", #PB_Window_SystemMenu)
ButtonGadget(0, 400, 200, 150, 30, "Ouvre la fenetre modale")
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Break
Case #PB_Event_Gadget
If EventGadget() = 0
ModalWindow()
EndIf
EndSelect
ForEver