ich sehe die Listings im purearea.net gerade durch, vielleicht finde ich ja noch was. Hier ist mein Listing. Das wiederöffnen klappt dort nicht, wenn die Node bereits geschlossen wurde. Vielleicht nur ein dummer Programmierfehler?
Code: Alles auswählen
; PureBasic Visual Designer v3.90 build 1360
;- Window Constants
;
Enumeration
#Window_0
EndEnumeration
;- Gadget Constants
;
Enumeration
#Tree_0
EndEnumeration
Procedure Open_Window_0()
If OpenWindow(#Window_0, 216, 0, 600, 300, #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "New window ( 0 )")
If CreateGadgetList(WindowID())
TreeGadget(#Tree_0, 35, 50, 200, 210)
AddGadgetItem(#Tree_0, -1, "Eintrag 1")
AddGadgetItem(#Tree_0, -1, "Eintrag 2")
AddGadgetItem(#Tree_0, -1, "Knoten 1")
OpenTreeGadgetNode(#Tree_0, -1)
AddGadgetItem(#Tree_0, -1, "Knoten 1 Eintrag 1")
AddGadgetItem(#Tree_0, -1, "Knoten 1 Eintrag 2")
AddGadgetItem(#Tree_0, -1, "Knoten 1 Eintrag 3")
CloseTreeGadgetNode(#Tree_0)
AddGadgetItem(#Tree_0, -1, "Eintrag 3")
AddGadgetItem(#Tree_0, -1, "Knoten 2")
OpenTreeGadgetNode(#Tree_0, -1)
AddGadgetItem(#Tree_0, -1, "Knoten 2 Eintrag 1")
AddGadgetItem(#Tree_0, -1, "Knoten 2 Eintrag 2")
AddGadgetItem(#Tree_0, -1, "Knoten 2 Eintrag 3")
CloseTreeGadgetNode(#Tree_0)
AddGadgetItem(#Tree_0, -1, "Eintrag 4")
EndIf
;---HIER
;Knoten 1 wieder öffnen..
OpenTreeGadgetNode(#Tree_0, 2)
AddGadgetItem(#Tree_0, -1, "Knoten 1 Eintrag 4")
AddGadgetItem(#Tree_0, -1, "Knoten 1 Eintrag 5")
AddGadgetItem(#Tree_0, -1, "Knoten 1 Eintrag 6")
CloseTreeGadgetNode(#Tree_0)
;---BIS HIER
EndIf
EndProcedure
Open_Window_0()
Repeat
Event = WaitWindowEvent()
If Event = #PB_EventGadget
;Debug "WindowID: " + Str(EventWindowID())
GadgetID = EventGadgetID()
If GadgetID = #Tree_0
Debug "GadgetID: #Tree_0 Position:"+Str(GetGadgetState(#Tree_0))
EndIf
EndIf
Until Event = #PB_EventCloseWindow
End
[EDIT Danilo] Code-Tags gesetzt