首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何判断何时修改QTableWidgetItem

如何判断何时修改QTableWidgetItem
EN

Stack Overflow用户
提问于 2016-07-20 14:44:44
回答 2查看 1.6K关注 0票数 2

我正在用Python编写一个带有PySide库的应用程序。我有一个QTableWidget,它每秒钟更新一次。问题是,我希望能够手动更改数据,我想,如果我能够知道用户是否在更改单元格中的数据,那么我就可以阻止程序更新这个单元格。否则,每次更新时,我都会被“赶出”牢房。

  • 这是个好主意吗我该试试别的吗?为什么?
  • 我怎样才能达到我的目标?

非常感谢

编辑:

我知道存在一个itemChanged信号,但我真正想知道的是,是否有一种方法可以判断用户何时在单元格中写入一个新值,以便在编辑时不将它们踢出。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-20 16:30:45

在Qt文件中:

QTableWidgetItem::itemChanged(QTableWidgetItem* item)

每当项的数据发生变化时就发出此信号。

希望这能帮到你。

编辑:

QTableWidget使用默认的项目委托(QItemDelegate实例),它具有createEditor方法和closeEditor信号。

您可以重新实现createEditor,这意味着编辑开始,并连接信号closeEditor,这意味着编辑结束。

这可能是正确的方法。

票数 3
EN

Stack Overflow用户

发布于 2016-07-20 17:36:09

通常,您可以通过使用QItemDelegates来处理这种情况,它允许您控制哪些单元格可由用户编辑,哪些类型的控件可用于编辑单元格,您还可以捕获它们输入的数据并对其进行验证或操作,然后将其保存到模型中。

QItemDelegates只控制使用视图接口进行的编辑。如果正在以编程方式更新表,则不会将更改发送到QItemDelegate

用于Here is an exampleQItemDelegateQTableWidget

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38484452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档