PyQt/Pyside - 也使用 valueChanged 返回先前的值

Posted

技术标签:

【中文标题】PyQt/Pyside - 也使用 valueChanged 返回先前的值【英文标题】:PyQt/Pyside - also return the previous value with valueChanged 【发布时间】:2014-05-03 00:32:05 【问题描述】:

我是这些论坛的新手。 在 QTableWidget 中,我试图验证 QTableWidgetItem 的更改值。如果新值出现在表中的其他位置,我需要将该值恢复为以前的值。我曾想过使用一个临时列表,但想知道是否有可能有一个自定义信号或类似信号,它可以返回更改后的值以及 qtablewidgetitem 的先前值。谢谢:)

【问题讨论】:

【参考方案1】:

我认为您正在寻找此方法的重新实现:

void QAbstractItemDelegate::setModelData(QWidget * editor, QAbstractItemModel * model, const QModelIndex & index) const [virtual]

将模型中给定索引处的项目的数据设置为给定编辑器的内容。

基本实现什么都不做。如果您想要自定义编辑,则需要重新实现此功能。

这将允许您在单元格发生变化的地方发出信号,包括以前的值和当前值。

QTableWidget 中似乎没有为此提供方便的信号。

【讨论】:

谢谢!看起来我需要用自定义代表弄脏我的手。 :) 完成后将发布代码。

以上是关于PyQt/Pyside - 也使用 valueChanged 返回先前的值的主要内容,如果未能解决你的问题,请参考以下文章

关闭 PyQt 对话框会终止父进程? (PyQt4 / Pyside) 带有示例代码

PyQt / PySide keyPressEvent 默认行为

Python/pyside,pyqt(pyside,pyqt optional): 控制文本选择的函数

将 vtkOrientationMarkerWidget 与 QVTKRenderWindowInteractor 一起使用 [PyQt4/PySide]

如何使用线程自动关闭 PyQt/PySide 窗口?

PyQt / PySide - 小部件的实际大小