解决 通过继承QAbstractTableModel并实现headerData方法给QTableView添加标题时,标题不显示 的问题

试验的程序极简单,用了一个字符串列表作为Model的数据源,因此只有一列数据。


一开始用如下代码设置列标题显示的文本为"col1",但运行后发现,没有任何效果,不光标题上的文字不出现,就连标题自身都不出现。

QVariant class_table_model::headerData(int section, Qt::Orientation orientation, int role) const
{
      return "col1";
}



后添加了对role的判断,标题能正常显示了,也能正常显示列标题为"col1"。

QVariant class_table_model::headerData(int section, Qt::Orientation orientation, int role) const
{
    if(role != Qt::DisplayRole) return QVariant();

    return "col1";
}

你可能感兴趣的:(解决 通过继承QAbstractTableModel并实现headerData方法给QTableView添加标题时,标题不显示 的问题)