在PyQt4中单击()信号用于QListView

时间:2010-05-26 10:16:41

标签: python pyqt4 qlistview

我有一个工作的QListView,但是从文档中,我无法弄清楚如何使用新选择的项目的索引来触发信号。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

Imho,实现这一目标的更简单方法是使用QListWidget而不是QListView,这样您就可以使用itemClicked信号,该信号将所选项目发送到回调函数。

答案 1 :(得分:0)

这是我如何实现它的代码:

class VenueList(QListView):
    def __init__(self, parent, venues):
        super(VenueList, self).__init__(parent)
        self.clicked.connect(self.venue_selected)
        [...]

    def venue_selected(self, index):
        venue = self.model().data(index, VenueListModel.VenueRole)
        doStuff()

您可以浏览我使用此here的完整代码(第69行)。但是,我警告你,这段代码非常糟糕,需要进行一些严肃的重构。