Thanks norobro, it works fine and I'm using it.
I have tested another way by making this little "good blood" hack:

Qt Code:
  1. class MyTableWidgetItem : public QTableWidgetItem
  2. {
  3. public:
  4. explicit MyTableWidgetItem(const QString & text, int type = Type) : QTableWidgetItem(text, type) {}
  5.  
  6. virtual void setData(int role, const QVariant &value)
  7. {
  8. if (QAbstractTableModel *model = (this->tableWidget() ? qobject_cast<QAbstractTableModel*>(this->tableWidget()->model()) : 0)) {
  9. model->blockSignals(true);
  10. QVariant nullValue;
  11. QTableWidgetItem::setData(role,nullValue);
  12. model->blockSignals(false);
  13. }
  14. QTableWidgetItem::setData(role,value);
  15. }
  16. };
  17.  
  18. //--
  19.  
  20. QTableWidgetTest::QTableWidgetTest(QWidget *parent, Qt::WFlags flags)
  21. : QDialog(parent, flags)
  22. {
  23. ui.setupUi(this);
  24.  
  25. int value= 0;
  26. for (int row= 0; row < table->rowCount(); row++) {
  27. for (int col= 0; col < table->columnCount(); col++) {
  28. QTableWidgetItem *item= new MyTableWidgetItem(QString::number(value));
  29. table->setItem(row,col,item);
  30. value++;
  31. }
  32. }
  33.  
  34. connect(ui.tableWidget, SIGNAL(itemChanged(QTableWidgetItem*)), this, SLOT(multipleItemsChanged(QTableWidgetItem*)));
  35. }
To copy to clipboard, switch view to plain text mode