1

在 QT4.5 中,

我使用了 QTableWidget,并且我已经将信号 QTableWidget::itemClicked() 连接到了一个自定义插槽,如下所示:

connect(_table, SIGNAL(itemClicked(QTableWidgetItem*)), item, SLOT(sloItemClicked(QTableWidgetItem*)));

我为添加到表中的每一行创建这样一个连接。

问题是插槽 sloItemClicked 被多次调用,似乎它被调用 X 次,其中 X 是我表中的行数。

但它一直在要求同一行。(我收到的 QTableWidgetItem 是一样的)。

这是一个问题,因为单击该行时,我将其删除。所以下次它被调用时,QTableWidgetItem 不再有效并且崩溃。

如果我只有一排,一切都会按预期工作..

任何想法?

谢谢

4

1 回答 1

8

您应该只创建一次连接,因为信号是桌子上的信号,而不是个人上的信号QTableWidgetItem。发出时,它将为您提供QTableWidgdetItem您单击的作为参数。

于 2010-01-26T21:39:50.657 回答