【发布时间】:2014-03-26 21:48:07
【问题描述】:
虽然深入研究 TreeView/Model 概念,但到目前为止我“理解”...
首先我继承 MyTreeView() 类,通过将 QTreeView 内置分配给 MyOwnAbstractItemModel() model (在下一步中进行子类化):
class myTreeView(QTreeView):
def __init__(self, parent=None):
super(myTreeView, self).__init__(parent)
self.myOwnAbstractModel = MyOwnAbstractItemModel()
self.setModel(self.myOwnAbstractModel)
我继续继承/描述 MyOwnAbstractItemModel()。它使用内置的 QAbstractItemModel() 类作为“模板”来开始...
class MyOwnAbstractItemModel(QAbstractItemModel):
def __init__(self, parent=None):
super(MyOwnAbstractItemModel, self).__init__(parent)
据我了解,必须声明一些 MyOwnAbstractItemModel() 方法才能使 MODEL 工作。 我想知道在哪里可以获得这些方法()名称及其语法描述的完整列表?
我查看了在线发布的代码示例。看起来那些预定义的方法已经预定义了特定的语法......例如传入参数的数量以及预期的参数类型......例如,下面的方法没有得到任何传入参数(不清楚是什么它的目的):
def mimeTypes(self):
#print '\n mimeTypes(self)'
types = QStringList()
types.append('application/x-ets-qt4-instance')
return types
但是这个方法:
def dropMimeData(self, mimedata, action, row, column, parentIndex):
parentNode = self.nodeFromIndex(parentIndex)
接受四个参数。请指教!非常感谢。
【问题讨论】:
标签: pyqt qtreeview qabstractitemmodel