Qtableview内的QStandardItemModel [英] QStandardItemModel inside Qtableview

查看:446
本文介绍了Qtableview内的QStandardItemModel的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在QTableView内使用QStandardItemModel.在这里,我有两个按钮& Qtableview在我的主窗口中. 我只需要4列就可以了.并且行会有所不同.这两个按钮将用于添加/删除行(测试用例).

I am using QStandardItemModel inside QTableView. Here i have two button & Qtableview inside my mainwindow. I need only 4 columns inside this. And rows will vary. The two Buttons will be used to add/delete a row (test case).

  1. setHorizontalHeaderItem没有显示所有文本(意味着所有文本都不可见).如果我放'Text for the Employee Name'的示例,它是不完全可见的吗?
  2. 如何使QStandardItemModel占据全部QTableview(width).目前显示在左上角吗?
  1. setHorizontalHeaderItem is not showing all the text(means all text is not visible). Example if i put 'Text for the Employee Name' it is not fully visible ?
  2. How to make QStandardItemModel occupy full QTableview (width). At present it is showing at top left corner ?

如何实现?

代码:

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);
        }
    }

    model->setHorizontalHeaderItem(0, new QStandardItem(tr("Time")));
    model->setHorizontalHeaderItem(1, new QStandardItem(tr("Text for the Employee Name")));
    model->setHorizontalHeaderItem(2, new QStandardItem(tr("Text for the Employee Address")));
    model->setHorizontalHeaderItem(3, new QStandardItem(tr("Text for the Employee Date of Birth")));

    model->setVerticalHeaderItem(0, new QStandardItem(tr("Test-Case-----1")));

推荐答案

tableView->horizontalHeader()->setStretchLastSection(true);

tableView->horizontalHeader()->setResizeMode(QHeaderView::Stretch);

这篇关于Qtableview内的QStandardItemModel的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆