将自定义 header 视图添加到 table 视图

Add custom header view to table view

我想创建自定义 header 视图并使用模型将其添加到 table 视图。这是我的方法:

QStandardItemModel * s= new QStandardItemModel(this);
s->setHeaderData(0, Qt::Horizontal, "Header 1", Qt::DisplayRole);
s->setHeaderData(1, Qt::Horizontal, "Header 2", Qt::DisplayRole);
s->setHeaderData(2, Qt::Horizontal, "Header 3", Qt::DisplayRole);
QHeaderView * p = new QHeaderView(ui->tableView);
p->setModel(s);
ui->tableView->setHorizontalHeader(p);
ui->tableView->show();

但是 header 没有出现在 table 中。我也试过

ui->tableView->horizontalHeader()->setModel(s);

但没有结果。

您的示例中缺少列数,这就是它未显示的原因 header。在您的代码中使用 s->setColumnCount(3)。有关详细信息,请阅读 this