使QtableWidget表格中的列平均填充

要使QtableWidget表格中的列平均填充,关键代码如下:


/*****************************************************

ui->tableWidget->horizontalHeader()->setResizeMode(QHeaderView::Stretch);

*******************************************************/



例子代码:

#include "mytable.h"
#include <QLabel>
#include <QTableWidgetItem>
#include <QDateTimeEdit>
#include <QComboBox>
#include <QSpinBox>
#include <QApplication>
#include <QHeaderView>

MyTable::MyTable(QWidget *parent) :
    QTableWidget(parent)
{
    setColumnCount(5);//要先设置多少行和多少列
    setRowCount(5);
    QStringList headers;
    headers<<"ID"<<"Name"<<"Age"<<"Work"<<"SHOU";
    setHorizontalHeaderLabels(headers);//列头
    this->horizontalHeader()-> setResizeMode(QHeaderView::Stretch);//列自行填充
    QTableWidgetItem *tablewidgetitem1 =new QTableWidgetItem(tr("1"));
    setItem(0,0,tablewidgetitem1);
    QTableWidgetItem *tablewidgetitem =new QTableWidgetItem(tr("Tom"));
    setItem(0,1,tablewidgetitem);

    QDateTimeEdit *date=new QDateTimeEdit();
    date->setDateTime(QDateTime::currentDateTime());
    date->setDisplayFormat("dd/M/yyyy");
    date->setCalendarPopup(true);
    //setCellWidget可在某个制定表格单元格中插入一个控件
    setCellWidget(0,2,date);

    QComboBox *com=new QComboBox();
    com->addItem(tr("worker"));
    com->addItem(tr("doctor"));
    setCellWidget(0,3,com);

    QSpinBox *spin=new QSpinBox;
    spin->setRange(0,1000);
    setCellWidget(0,4,spin);
}

int main(int argc,char *argv[])
{
    QApplication a(argc,argv);
    MyTable b;
    b.show();
    return a.exec();
}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值