我正在寻找一个返回QTableWidget水平标题宽度的函数:经过对官方文档的深入研究后,我发现的唯一事情是this,但调试器请将此错误发送给我:
int section = table->horizontalHeader()->defaultSectionSize();
错误:无效使用不完整类型'类QHeaderView'
当然,我在构造函数中指定了ResizeMode:
table->horizontalHeader()->setSectionResizeMode(QHeaderView::Interactive);
答案 0 :(得分:1)
QTableView::horizontalHeader
返回指向QHeaderView
的指针,问题是该指针引用的内容的定义未在<QTableWidget>
中声明(更具体地说, <QTableView>
, QTableWidget 包括);它只是forward declared。
编译器告诉您正在尝试使用不完整类型,这意味着编译器不知道所述类型的定义。
指向不完整类型的指针很好,但不允许(也不能)访问其中的任何内容。
QHeaderView
中提供了<QHeaderView>
的完整声明,包含它并且编译器将得到满足。
#include <QHeaderView> // <- required