首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QTableView问题与selectionModel()

QTableView问题与selectionModel()
EN

Stack Overflow用户
提问于 2011-05-09 16:28:30
回答 1查看 1.7K关注 0票数 1

我对QTableView.selectionModel()的调用有问题。我在另一个类中实例化我的QTableView,然后当我打开一个新项目并需要填充我的视图时,我调用一个函数fillGrid(),其中我获取数据和其他东西。这也是我调用selectionModel()方法的地方。

我第一次说的时候一切都很顺利。但是,如果我试图在程序的同一个实例中再次调用它,那么它会给出以下错误:

TypeError:“QItemSelectionModel”对象不可调用

我的函数fillGrid看起来像:

代码语言:javascript
复制
def fillGrid(self):

    self.infos = select.getInfosProject(self.parent.db, self.parent.currentProj)
    self.getData()
    header = ["id","hidden","state","filename","asset-shot name","task","buffer","pass","camera","version","user","date","deps","check","comment","start frame","end frame","missing frames","edit start frame","edit end frame"]
    self.model = SequenceGridModel(self.data, header, self)
    self.setModel(self.model)


    self.hideColumn(0)
    self.hideColumn(1)
    font = QtGui.QFont("Verdana", 8)
    self.setFont(font)
    vh = self.verticalHeader()
    vh.setVisible(False)
    hh = self.horizontalHeader()
    hh.setStretchLastSection(True)
    self.resizeColumnsToContents()

    self.setSelectionBehavior(QtGui.QTableView.SelectRows)
    self.selectionModel = self.selectionModel()
    self.connect(self.selectionModel, QtCore.SIGNAL("selectionChanged(QItemSelection, QItemSelection)"), self.getSelection)
    self.setSortingEnabled(True)


    self.setEditTriggers(QtGui.QAbstractItemView.CurrentChanged)
    self.viewport().installEventFilter(self)
    self.setItemDelegateForColumn(13,ComboBoxDelegate(self, self.checkValues))

    self.setColumnWidth(13, 64)

知道为什么会这样吗?提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-09 18:20:47

您已经将QItemSelectionModel实例分配给名称selectionModel,但是selectionModel是QTableView类的一种方法。您需要为您的选择模型选择一个新的名称。请参阅QAbstractItemView类引用。

如果要将选择模型分配给模型,则需要使用setSelectionModel方法。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5939759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档