2010-09-05 6 views
4

我在Windows 7 64位上使用wxWidgets 2.8.11。我创建了一个wxTreeCtrl控件,顾名思义,它是一个树形控件。您可以通过调用AddRoot()来添加根节点,但它似乎只在第一次调用时才起作用。wxWidgets wxTreeCtrl上的AddRoot()无法添加多个节点

这里就是我创建树代码:

newHandler-> sendPacketTree = new wxTreeCtrl(newHandler->sendGroupBox,4,wxPoint(7,12),wxSize(newHandler->sendGroupBox->GetSize().x-14,newHandler->sendGroupBox->GetSize().y-20),wxTR_DEFAULT_STYLE); 

下面是我在做什么,就像一个测试:

this->sendPacketTree->AddRoot(wxT("Test1")); 
this->sendPacketTree->AddRoot(wxT("Test2")); 

但是,只有第一个根节点出现在树,并没有出现第二个节点(或第一个节点之后的任何其他节点)

有谁知道为什么会发生这种情况,或者我怎么能解决这个问题?我很难过。

+0

要看到更多的代码比失败的两行将有所帮助。 – kiamlaluno 2010-09-05 03:17:50

+0

好吧,我在创建树的地方添加了片段......我想不出任何其他相关的东西。 – Brad 2010-09-05 03:23:16

回答

4

我自己找到了解决方案。我认为AddRoot()允许你添加多个根。事实证明,你只能拥有一个根,但是你可以隐藏实际的“根”,并且根的任何孩子将看起来像一个wxTR_HIDE_ROOT样式集的根。

+0

+1发布您自己的解决方案 – WolfgangA 2010-09-05 04:10:33