2014-03-03 56 views
1

我有一个QTreeWidget结构是这样的:QTreeWidget发送信号doubleClicked

root 
    | 
    groups 
     | 
     tables 

我试图做一些事情时,有一个“双击”,但只有在所谓的“表”孩子的。

唯一的好成绩,我已经能够得到的是:

self.ui.treeWidget.itemDoubleClicked.connect(self.treeWidgetItemAction) 

现在的问题是,在QTreeWidget所有元素都响应“双击”。我不想那样,但我不知道如何仅仅引用树的最后一个分支中的孩子。

任何帮助?

谢谢。

回答

2

只要让treeWidgetItemAction方法检查doubleCliked项是否应该对doubleClicks做出反应,并且只做你想做的事情。

要知道物品是叶子的位置,您可以检查它是childCount方法。如果它没有任何孩子,那是一片树叶。

+0

你说得对。在这种情况下,我不确定我是否理解哪些项目应该对双击产生反应。只有叶子? – madjar

+0

谢谢Madjar,我会尽力修复它! – codeKiller

+0

是的,只是叶子必须对“doubleClick”作出反应 – codeKiller