qt tableview设置复选框
时间: 2023-09-20 18:03:43 浏览: 92
要在Qt的TableView中设置复选框,可以使用QTableView和QStandardItemModel结合使用。以下是一个简单的示例程序:
```
#include <QApplication>
#include <QStandardItemModel>
#include <QTableView>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QStandardItemModel model(4, 2);
model.setHeaderData(0, Qt::Horizontal, QObject::tr("Name"));
model.setHeaderData(1, Qt::Horizontal, QObject::tr("Selected"));
for (int row = 0; row < 4; ++row) {
QStandardItem *nameItem = new QStandardItem(QString("Item %0").arg(row));
model.setItem(row, 0, nameItem);
QStandardItem *selectedItem = new QStandardItem();
selectedItem->setCheckable(true);
model.setItem(row, 1, selectedItem);
}
QTableView tableView;
tableView.setModel(&model);
tableView.show();
return a.exec();
}
```
在这个示例程序中,我们创建了一个QStandardItemModel对象,它有4行2列的表格,并设置了表头。然后,我们使用一个循环来设置每个项目的名称和复选框。在复选框项目中,我们调用setCheckable(true)方法来启用复选框。最后,我们将模型设置为QTableView的模型,并显示它。
运行这个程序,你将会看到一个TableView,其中包含了一个名为“Name”的列和一个名为“Selected”的列,每一行都有一个复选框,你可以选择或取消选择它们。
阅读全文