我是qt的新手,我在QTtableview中使用QStandardItemModel。
请建议,
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
model= new QStandardItemModel(4, 4);
for (int row = 0; row < 4; ++row) {
for (int column = 0; column < 4; ++column) {
QStandardItem *item = new QStandardItem(QString("row %0, column %1").arg(row).arg(column));
model->setItem(row, column, item);
}
}
ui->tableView->setModel(model);
}
答案 0 :(得分:4)
1&gt; model->setHorizontalHeaderItem(0, new QStandardItem(tr("Time")));
2&gt;像这样:
for (int row = 0; row < 4; ++row)
{
QList<QStandardItem *> rowData;
rowData << new QStandardItem(QString("row %1, column %2").arg(row).arg(0))
rowData << new QStandardItem(QString("row %1, column %2").arg(row).arg(1))
rowData << new QStandardItem(QString("row %1, column %2").arg(row).arg(2))
rowData << new QStandardItem(QString("row %1, column %2").arg(row).arg(3))
model->appendRow(rowData);
}
答案 1 :(得分:2)
1-有多种方法可以在视图中输入标题。我喜欢这样做:
QStandardItem *infoItem = new QStandardItem("Info");
infoItem ->setFont(heading);
infoItem ->setToolTip("Scene Object Name and Type");
QStandardItem *fileStatus = new QStandardItem();
fileStatus->setIcon(QIcon( ":/icons/fileStatus" ));
fileStatus->setToolTip("File Status displayed by ...");
QStandardItem *fileDirectory = new QStandardItem();
fileDirectory->setIcon( QIcon( ":/icons/directory" ) );
fileDirectory->setToolTip("File directory");
m_model->setHorizontalHeaderItem( 0, infoItem );
m_model->setHorizontalHeaderItem( 1, fileStatus);
m_model->setHorizontalHeaderItem( 2, fileDirectory );
2-您可以将拉伸最后一部分设置为true。这样可确保每次调整表格本身时,最后一列都会拉伸以填充表格。
myView->horizontalHeader()->setStretchLastSection(true);
或者您可以设置所需的列,以便足够伸展以填充表格。为此,请确保将setStretchLastSection设置为false。
myView->horizontalHeader()->setStretchLastSection(false);
myView->horizontalHeader()->setResizeMode(yourDesiredCol, QHeaderView::Stretch);
答案 2 :(得分:0)
使用setHorizontalHeaderLabels()和setVerticalHeaderLabels()或setHorizontalHeaderItem()和setVerticalHeaderItem()方法。
垂直标题是列名,水平标题是行名。
如果要显示的信息多于简单文本(如图标或彩色文本),则setVerticalHeaderItem非常有用。