qtableview不选中_如何选中/取消选中QTableView并触发setData()
我有一個(gè)自定義的QTableModel,我在PyQt中使用QTableView顯示它。我有一些字段設(shè)置為可檢查,我想添加“全部檢查”和“不檢查”按鈕。我覺得應(yīng)該有一種方法可以使setData()從代碼中被調(diào)用,這樣檢查狀態(tài)就會(huì)改變,就像我已經(jīng)用setData()編寫的代碼一樣。真的有辦法嗎?在
以下是我正在使用的setData,按要求:if role == Qt.CheckStateRole:
row = index.row()
column = index.column()
if row == 0 and column != 0:
self._data.parsingConfiguration['columnEnabled'][column-1] = True if value == Qt.Checked else False
self.dataChanged.emit(self.createIndex(1, column), self.createIndex(len(self._data.data),column))
if column-1 == self._data.parsingConfiguration['groupNumberColumn']:
self.setGroupNumber(self.getFirstEnabledMember())
elif column-1 == self._data.parsingConfiguration['timeStepColumn']:
self.setTimeStep(self.getFirstEnabledMember())
self.emit(SIGNAL("layoutChanged()"))
return True
if column == 0 and row != 0:
self._data.parsingConfiguration['rowEnabled'][row-1] = True if value == Qt.Checked else False
self.dataChanged.emit(self.createIndex(row, 1), self.createIndex(row, self._data.numColumns+1))
return True
return False
總結(jié)
以上是生活随笔為你收集整理的qtableview不选中_如何选中/取消选中QTableView并触发setData()的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [转载] Java static关键字与
- 下一篇: s3c2440移植MQTT