我刚开始学习Qt编程,并尝试使用自己创建的模型类继承自QAbstractTableModel
,使用QTableView
控件制作一个简单的表格数据布局。但不知何故,我的表格视图最终看起来像这样:
(图片来源:nerdland.net)
每个单元格里看起来像是复选框(但我点击它们却没有反应),到底是什么东西?如何让它们消失?除了对象名称之外,我没有更改任何QTableView
属性。
如果有关系的话,我的模型代码非常简单:
MyTableModel::MyTableModel(QObject* parent)
: QAbstractTableModel(parent)
{
}
MyTableModel::~MyTableModel()
{
}
int MyTableModel::rowCount(const QModelIndex& parent) const
{
return 1000;
}
int MyTableModel::columnCount(const QModelIndex& parent) const
{
return 5;
}
QVariant MyTableModel::data(const QModelIndex& index, int role) const
{
return "Foo";
}
对话框UI是使用Qt Designer构建的,在对话框的类中,我通过以下方式将模型附加到视图:
MyTableModel testModel = new MyTableModel(this);
ui.testTable->setModel(testModel);
除此之外,我没有对 ui.testTable
进行任何操作。
使用 Qt 4.6。