开发者

PyQt QTableView with QComboBox

开发者 https://www.devze.com 2023-03-03 15:28 出处:网络
I am displaying informations from a Database with a QTableView. I would like the fields to be displayed as a combobox so the user can modify them easily.

I am displaying informations from a Database with a QTableView. I would like the fields to be displayed as a combobox so the user can modify them easily. I read a lot of things about custom delegate items and flags having to be set to IsUserCheckable, but I don't understand how all of this is supposed to work. I tried a couple of things with the flags and role, but with strictly no effect, so there really is something important that I am missing.

I would really appreciate a working code example of this, or at least some nice explanation if someone has that开发者_JAVA百科 at hand :)


Here some example, but if you want something more advanced see 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_())
0

精彩评论

暂无评论...
验证码 换一张
取 消