Python 如何将Kivy TreeView节点扩展事件绑定到函数

Python 如何将Kivy TreeView节点扩展事件绑定到函数,python,treeview,kivy,Python,Treeview,Kivy,我在网上查看了一下,但仍然在研究如何将TreeView的“on_node_expand”绑定到函数 有可能得到正确的语法吗 def createSubNode(elemObj,designTree,parent=None): if type(elemObj) is (designClass.PathGroup): pass else: for (name, obj) in elemObj.items(): subroot =

我在网上查看了一下,但仍然在研究如何将TreeView的“on_node_expand”绑定到函数

有可能得到正确的语法吗

def createSubNode(elemObj,designTree,parent=None):
    if type(elemObj) is (designClass.PathGroup):
        pass
    else:
        for (name, obj) in elemObj.items():
            subroot = designTree.add_node(TreeViewLabel(text=name,font_size=12),parent)
            subroot.fbind('on_node_expand', bind_object)
            createSubNode(obj,designTree,subroot)

def bind_object(node):
    print("testing")

if __name__ == '__main__':
    from kivy.app import App

    class TestApp(App):
        def build(self):
            designTree = TreeView(root_options=dict(text='Designs',font_size=12))
            designTree.size_hint = (1,None)
            designTree.bind(minimum_height=designTree.setter('height'))
            createSubNode(dsgnManObj, designTree)
            svRoot = ScrollView(size=(Window.width, Window.height))
            svRoot.add_widget(designTree)
            root = BoxLayout(orientation ='horizontal')
            root.add_widget(svRoot)
            return root

    TestApp().run()

节点上的展开是树视图上的事件,而不是节点上的事件,因此您不需要将其绑定到子运行对象上,而只绑定到设计树上的对象上。

节点上的展开是树视图上的事件,而不是节点上的事件,因此您不需要将其绑定到子运行对象上,但仅限于
设计树上的
对象。

不客气,但如果答案解决了您的问题,请接受:)不客气,但如果答案解决了您的问题,请接受:)