我有这样的功能:
def research(self):
query = QtSql.QSqlQuery()
query.prepare("SELECT * FROM videos WHERE name_simple LIKE ?")
query.bindValue(0, "%" + liste.simpleChar(self.research_bar.text()) + "%")
query.exec_()
self.modele.setQuery(query)
self.tableau.doubleClicked.connect(self.launchFile)
self.tableau.setModel(self.modele)
它在数据库中执行请求,并返回一些视频。我的水平标题有以下字段:“姓名”、“投票”、“日期”。但是,当我单击其中一个字段时,视图会返回到原始模型,其中包含所有视频,而不仅仅是函数返回的视频。
我这样定义我的标题:
self.horizontal_header = QtGui.QHeaderView(QtCore.Qt.Horizontal)
self.horizontal_header.setDefaultAlignment(QtCore.Qt.AlignLeft)
self.horizontal_header.setClickable(True)
self.tableau.horizontalHeader().setResizeMode(5, QtGui.QHeaderView.Fixed)
self.tableau.resizeColumnToContents(1)
self.tableau.setHorizontalHeader(self.horizontal_header)
self.tableau.hideColumn(0)
self.tableau.hideColumn(2)
self.tableau.hideColumn(4)
#self.tableau.hideColumn(6)
self.tableau.hideColumn(7)
self.tableau.horizontalHeader().moveSection(5, 0)
self.tableau.verticalHeader().setDefaultSectionSize(72)
self.tableau.setColumnWidth(5, 127)
self.tableau.setSortingEnabled(True)
self.tableau.verticalHeader().setVisible(False)
而且我无法按名称、投票或日期对返回的视频进行排序。你知道我为什么会有这种行为吗?