2010-05-28 63 views
3

我正在使用wxPython制作python树可视化工具。它会像这样使用:wxPython TreeCtrl不显示根目录,同时仍然显示箭头

show_tree([ 'A node with no children', ('A node with children', 'A child node', ('A child node with children', 'Another child')) ]) 

它工作正常,但它显示了一个值为“树”的根。我做到了这样,它会创建多个根,但后来知道我不允许这样做。我恢复到原来的代码,但使用改变它从这个:self.tree = wx.TreeCtrl(self)到这个:self.tree = wx.TreeCtrl(self, style=wx.TR_HIDE_ROOT)。它的工作,但没有显示在一边的小箭头,所以你不知道哪些节点有孩子。有什么方法可以隐藏根节点,但保留箭头。注意:我在使用Python版本2.5和wxPython版本2.8.4.0的Mac上运行。

回答

8

注:当我发布这个我不知道你能将多个样式应用于树。
尝试完所有事情之后,我意识到这是TR_HIDE_ROOT和TR_HAS_BUTTONS的组合,可以隐藏根目录,同时仍然在左侧显示允许您使用子节点折叠和隐藏节点的箭头。这是我最终使用的代码:

self.tree = wx.TreeCtrl(self, style=wx.TR_HAS_BUTTONS + wx.TR_HIDE_ROOT) 
1

可以wxTR_LINES_AT_ROOT是你在找什么?

wxWidgets documentation

 
wxTR_LINES_AT_ROOT 
    Use this style to show lines between root nodes. 
    Only applicable if wxTR_HIDE_ROOT is set 
    and wxTR_NO_LINES is not set. 

免责声明:这是++ WX在C,而不是Python但它应该相当于

+0

感谢这工作了不起:) – 2012-05-09 17:13:18