如何在QTable中选择多个列

Posted

技术标签:

【中文标题】如何在QTable中选择多个列【英文标题】:how to select multiple columns in QTable 【发布时间】:2011-07-25 11:53:04 【问题描述】:

我在 c++/ubuntu 中工作。我创建了一个 QTable :

  1 | 2
 -------
aaaa|bbbb
cccc|dddd
....|....

我想问我如何选择整个第2行:cccc |dddd。

我做到了:

QModelIndexList indexes = ui->tableView->selectionModel()->selection().indexes();

    for (int i = 0; i < indexes.count(); ++i)

    
        QModelIndex index = indexes.at(i);

        if (index.isValid())
        

          QString s=index.data(Qt::DisplayRole).toString();
          QMessageBox noc;
                  noc.setText(s);
                  noc.exec();
        


    

但我只看到 tje cccc 元素被选中。

欣赏。非常感谢!

【问题讨论】:

QTable 已弃用 Qt2|3 类。你真正使用哪个类?请澄清你的问题。您想通过单击以编程方式或手动方式选择一行吗?您发布的代码仅显示选择,而不是尝试选择某些内容。 【参考方案1】:

如果您使用的是Q3Table,则有an enum for handling selections,它是使用this function 设置的。

如果您使用QTableView(推荐),则可以使用a similar enum 和function 进行设置。

我希望这会有所帮助。正如 Raiv 在评论中所说,如果您澄清您的问题,我们可以为您提供更多帮助。

【讨论】:

【参考方案2】:

尝试使用QTableView::selectedIndexes。该函数用于获取选中的项目。

【讨论】:

以上是关于如何在QTable中选择多个列的主要内容,如果未能解决你的问题,请参考以下文章

Python - PyQt - QTable 小部件 - 添加行

如何使用 QTable?添加、编辑、删除和检索行

连接后如何在 Pyspark Dataframe 中选择和排序多个列

QTable 允许调整列大小,但不小于内容

如何从 Qtable 中获取值

QTableView 如何以编程方式选择多个列