带QComboBox的PyQt QTableView

时间:2011-05-06 10:09:30

标签: qt combobox pyqt qtableview

我正在使用QTableView显示来自数据库的信息。我希望这些字段显示为组合框,以便用户可以轻松修改它们。 我阅读了很多关于自定义委托项和标志必须设置为IsUserCheckable的内容,但我不明白所有这些都应该起作用。 我尝试了几个带有旗帜和角色的东西,但严格没有效果,所以确实有一些重要的东西我缺少

我真的很感激这个有用的代码示例,或者至少有一些很好的解释,如果有人手头有这个:)

1 个答案:

答案 0 :(得分:2)

这里有一些示例,但如果您想要更高级的内容,请参阅QItemDelegate Class Reference

import sys
from PyQt4 import QtGui, QtCore

class Example(QtGui.QMainWindow):

    def __init__(self):
        super(Example, self).__init__()

        table= QtGui.QTableWidget(5, 5)
        self.setCentralWidget(table)
        combobox = QtGui.QComboBox()
        combobox.addItem('one')
        combobox.addItem('two')        
        table.setCellWidget(3, 4, combobox)


if __name__ == '__main__':
    app = QtGui.QApplication(sys.argv)
    window = Example()
    window.setWindowTitle('ComboBox in Table Example')
    window.resize(600, 400)
    window.show()
    sys.exit(app.exec_())