Tyl*_*nry 25 c++ qt qt4 qtableview
我刚刚开始使用Qt编程,我正在尝试使用一个QTableView
控件来创建一个简单的表格数据布局,该控件具有继承自己的创建的模型类QAbstractTableModel
.出于某种原因,我的表视图最终看起来像这样:
alt text http://users.nerdland.net/tyler/files/pics/qtableview_checkboxes.png
什么在每个单元格中看起来像复选框(但在我点击它们时什么也不做)的东西,我怎么让它们消失?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";
}
Run Code Online (Sandbox Code Playgroud)
对话框UI在Qt Designer中构建,在对话框的类中,我将模型附加到视图,如下所示:
MyTableModel testModel = new MyTableModel(this);
ui.testTable->setModel(testModel);
Run Code Online (Sandbox Code Playgroud)
除此之外,我不执行任何操作ui.testTable
.
使用Qt 4.6.
Elr*_*hir 51
尝试更改MyTableModel::data()
为以下内容:
QVariant MyTableModel::data(const QModelIndex& index, int role) const
{
if (role == Qt::DisplayRole)
return "foo";
else
return QVariant();
}
Run Code Online (Sandbox Code Playgroud)
Qt::CheckStateRole
QTableView 可能误解了返回的角色QVariant .
归档时间: |
|
查看次数: |
5780 次 |
最近记录: |