如何在加载数据库时在QTableView中添加QPushButton

How to add QPushButton in QTableView when loading database by C++

本文关键字:添加 QTableView QPushButton 数据库 加载      更新时间:2023-10-16

我正在开发一个聊天应用程序。在聊天视图中,我使用QTableView显示聊天消息,我想在每个消息旁边添加一个QPushButton。例子:

A: How are you ? --- Button
B: I am fine --- Button

但是我只想添加10行。滚动时,数据将在10行中更改,但我不想创建新行。我想知道如何把QPushButtons放到QTableView中。我该怎么做呢?

我想知道如何把QPushButtons放到QTableView

你可以使用setIndexWidget (const QModelIndex &QWidget * widget)成员函数。比如:

QTableView * table = new QTableView (this);
...
int column = 1;
for (int row = 0; row < 10; ++row) {
    QPushButton *  button = new QPushButton (tr("Button Name"), table);
    table->setIndexWidget (model->index (row, column, QModelIndex () ), button);
}