2012-06-04 43 views
1

我試圖在PySide中實現Qt的Color Editor Factory Example(http://doc-snapshot.qt-project.org/4.8/itemviews-coloreditorfactory.html)。PySide中的QStandardItemEditorCreator

我面臨的問題是,QStandardItemEditorCreator類不在PySide中,或者我長時間搜索文檔後無法找到它。 PySide文檔中的唯一參考資料可以在以下頁面找到(http://www.pyside.org/docs/pyside/PySide/QtGui/QItemEditorCreatorBase.html),相關部分如下:

QStandardItemEditorCreator是一個便利的模板類,可以用來註冊小部件,而無需繼承PySide.QtGui.QItemEditorCreatorBase。

沒有任何鏈接到QStandardItemEditorCreator。

簡而言之,我如何在PySide中獲得QStandardItemEditorCreator的功能?

謝謝。

回答

1

我最終在python中實現了QStandardItemEditorCreator。這是我的實施:

class QStandardItemEditorCreator(QItemEditorCreatorBase): 
    def __init__(self, cls): 
     super(QStandardItemEditorCreator, self).__init__() 
     self.propertyName = cls.staticMetaObject.userProperty().name() 
     self.cls = cls 

    def createWidget(self, parent): 
     return self.cls(parent) 

    def valuePropertyName(self): 
     return self.propertyName 

如果有人有更好的答案,我會很樂意選擇你的我的。