如何检测表视图中的项目何时更改?
Posted
技术标签:
【中文标题】如何检测表视图中的项目何时更改?【英文标题】:How to detect when item is changed in a table view? 【发布时间】:2011-08-14 15:14:36 【问题描述】:我有这个表格视图,我在不同的列中写入一些数据。我通过在文本框中写入数据并单击“添加”按钮来添加数据。我正在修改它,方法是在表格视图中选择一行,将数据复制到文本框中,编辑它并按下“保存”按钮。
文本框中的数据除了发送到表格视图外,还用于我的应用程序中的其他计算。
我希望能够直接在表格视图上修改数据,然后发送更改后的数据以在另一个类中进行我需要的计算 - 就我而言。
现在我可以修改表格视图中的数据,但我如何发送数据已在视图中修改的信号?
有什么想法吗?
【问题讨论】:
【参考方案1】:数据修改由 Qt 的 Model/View 框架中的模型处理。
要做你想做的事,获取TableView
模型的句柄(通过它的model()
成员),并将插槽连接到模型的dataChanged
信号。
只要现有项目中的数据发生变化,就会发出此信号。
(如果您想对列或行标题更改做出反应,则有不同的信号。)
【讨论】:
以上是关于如何检测表视图中的项目何时更改?的主要内容,如果未能解决你的问题,请参考以下文章