QTreeWidgetItem' object has no attribute 'itemClicked'
时间: 2023-12-15 13:04:36 浏览: 121
根据提供的引用内容,可以看出出现了一个错误:'QTreeWidgetItem' object has no attribute 'itemClicked'。这个错误通常是因为QTreeWidgetItem没有itemClicked属性导致的。解决这个问题的方法是使用QTreeWidget而不是QTreeView。下面是一个使用QTreeWidget的例子:
```python
from PyQt5.QtWidgets import QApplication, QTreeWidget, QTreeWidgetItem
app = QApplication([])
tree = QTreeWidget()
tree.setColumnCount(2)
tree.setHeaderLabels(['Name', 'Age'])
parent = QTreeWidgetItem(tree, ['Parent', ''])
child1 = QTreeWidgetItem(parent, ['Child 1', '5'])
child2 = QTreeWidgetItem(parent, ['Child 2', '7'])
def on_item_clicked(item, column):
print(item.text(column))
tree.itemClicked.connect(on_item_clicked)
tree.show()
app.exec_()
```
在这个例子中,我们使用QTreeWidget而不是QTreeView,并且使用QTreeWidgetItem来创建树形结构。我们还定义了一个on_item_clicked函数来处理itemClicked事件,并将其连接到tree.itemClicked信号上。当用户单击树中的项目时,on_item_clicked函数将被调用,并打印所选项目的文本。
阅读全文