Apparemment j'aurais besoin de WindowID , mais comment l'obtenir avec une fenêtre fille d'un gadget MDI ?Resultat = CreateStatusBar(#StatusBar, WindowID)
Barre de status sur une fenêtre fille MDI ?
Barre de status sur une fenêtre fille MDI ?
Tu peux récupérer le handle de la fenêtre fille quand tu fais AddGadgetItem() pour ajouter une fenêtre fille.
Le problème, c'est de gérer tout les handles des fenêtres filles.
Avec un tableau, peut-être !
Le problème, c'est de gérer tout les handles des fenêtres filles.
Avec un tableau, peut-être !
Code : Tout sélectionner
MDIGadget(0, 0, 0, 0, 0, 1, 2, #PB_MDI_AutoSize)
Id1 = AddGadgetItem(0, -1, "child window")
CreateStatusBar(10, Id1)
Un truc dans ce genre là, (en remplacant la boucle qui crée les différentes fenêtres par une commande).
Code : Tout sélectionner
Enumeration
#Fenetre
#Status = 100
EndEnumeration
Dim Fenetres.l(50)
If OpenWindow(0,0,0,400,300,#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_SizeGadget|#PB_Window_MaximizeGadget,"MDIGadget")
If CreateGadgetList(WindowID(0)) And CreateMenu(0, WindowID(0))
MenuTitle("Menu index 0")
MenuTitle("MDI windows menu")
MenuItem(0, "self created item")
MenuItem(1, "self created item")
MDIGadget(#Fenetre, 0, 0, 0, 0, 1, 2, #PB_MDI_AutoSize)
For i = 0 To 5
Fenetres(i) = AddGadgetItem(#Fenetre, i, "child window "+Str(i))
CreateStatusBar(#Status + i, Fenetres(i))
Next
; add gadgets here...
CloseGadgetList()
EndIf
Repeat
Select EventType()
Case #PB_EventType_Focus
SetWindowTitle(#Fenetre, "Fenêtre active = "+ Str(GetGadgetState(#Fenetre))+" Hnd = "+Str(Fenetres(GetGadgetState(#Fenetre))))
EndSelect
Until WaitWindowEvent()=#PB_Event_CloseWindow
EndIf
Merci ChrisChris a écrit :Tu peux récupérer le handle de la fenêtre fille quand tu fais AddGadgetItem() pour ajouter une fenêtre fille.
Le problème, c'est de gérer tout les handles des fenêtres filles.
Avec un tableau, peut-être !
La doc conseille d'utiliser une liste chainée , je vais voir ce qui sera le plus pratique dans mon cas .
Encore merci
