我想算一下我已经选择的QTableItemWidget,

这是我的代码:

connect(m_table, SIGNAL(itemClicked(QTableWidgetItem *)), this, SLOT(onItemClicked(QTableWidgetItem *)));
int onItemClicked(QTableWidgetItem *item)
{
  QString imageName;
  imageName = item->data(Qt::UserRole).toString();
  if (!m_editMode){
    openMedia(imageName);
    QTimer::singleShot(50, m_table->selectionModel(), SLOT(clear()));
  }
  else{
    m_editBar->setTitle(QString::number(m_table->selectionModel()->selectedRows().count()));
  }
}

但是m_table->selectionModel()->selectedRows().count()始终为0。有什么建议吗?

最佳答案

当选择行的所有元素中选出的行是唯一的活性;它返回所有选定行的列表(请参阅isRowSelected)。
列的工作原理相同。

在这里,选择的行数为1,选择了行2:

c++ - Qt-计算选定的QTableItemWidget-LMLPHP

如果要计算小部件中所选项目的数量(在图像案例中为4),则应使用:

m_table->selectionModel()->selectedIndexes().count();

关于c++ - Qt-计算选定的QTableItemWidget,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34104126/

10-11 07:24