我在我的程序中将 PySide2 和 QTableView 与 QStandardItemModel(称为资源模型的对象)一起使用。当我使用以下代码创建、填充项目并将其放入表中时:
item = QStandardItem()
item.setData(123123, Qt.EditRole)
resourcesModel.setItem(1, 1, item)
当我双击包含该值的单元格时,它会提供一个用于编辑数据的框,我可以将字母放入其中。我的预期行为是有一个 QSpinBox 以便只能放数字。
这段代码:
item = QStandardItem()
item.setData(0.25, Qt.EditRole)
resourcesModel.setItem(1, 1, item)
正如预期的那样,在双击单元格后呈现一个 QDoubleSpinBox。PyQt5 中的这两个代码都按预期提供了旋转框。
当输入的值只是一个整数时,为什么 QStandardItem 不提供 QSpinBox?是否可以在不编写自定义委托的情况下解决此问题?
感谢您的所有回答。