QT-纯代码控件-QTableWidget(表格)

实现一个表格控件并向单元格中添加内容的功能

1.新建一个无ui界面的工程,其基类为widget,向工程中添加资源文件,并加入相应的ico或者png图片文件

在这里插入图片描述

2.代码实现

widget.h和main.cpp不做改变。为默认
widget.cpp
#include "widget.h"
#include <QTableWidget>
#include <QIcon>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    //构造一个QTableWidget的对象,并且设置为10行,5列
    QTableWidget * tableWidget = new QTableWidget(10,5,this);
    tableWidget->setWindowTitle("QTableWidget & Item");
    tableWidget->resize(450,350);
    this->resize(450,350);
    //添加表头
    QStringList header;
    header << "编号" << "名字" << "介绍";
    tableWidget->setHorizontalHeaderLabels(header);
    //添加第一列(从0开始计数)
    tableWidget->setItem(0,0,new QTableWidgetItem("第一把枪"));
    tableWidget->setItem(1,0,new QTableWidgetItem("第二把枪"));
    tableWidget->setItem(2,0,new QTableWidgetItem("第三把枪"));
    //添加第二列
    tableWidget->setItem(0,1,new QTableWidgetItem(QIcon(":/imgs/weapen/m4.ico"),"M4"));
    tableWidget->setItem(1,1,new QTableWidgetItem(QIcon(":/imgs/weapen/m16.ico"),"M16"));
    tableWidget->setItem(2,1,new QTableWidgetItem(QIcon(":/imgs/weapen/ak47.ico"),"AK47"));
    //添加第三列
    tableWidget->setItem(0,2,new QTableWidgetItem("m4是把好枪"));
    tableWidget->setItem(1,2,new QTableWidgetItem("m16是把垃圾枪"));
    tableWidget->setItem(2,2,new QTableWidgetItem("ak47压不住"));
    //也可将表格变为禁止编辑模式
    tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);

    tableWidget->show();        //tableWidget控件展示
    this->setWindowTitle("表格控件");


    /*
     *

    //也可以用下面的方法构造QTableWidget对象
    QTableWidget * tableWidget = new QTableWidget;
    tableWidget->setRowCount(10);       //设置行数10行
    tableWidget->setColumnCount(5);     //设置列数5列

    //可以用下面的语句执行删除行和列的功能
    tableWidget->removeRow(row);    //删除行
    tableWidget->removeColumn(col); //删除列
    //也可将表格变为禁止编辑模式
    tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);

    *
    */
}

Widget::~Widget()
{

}

3.效果展示

在这里插入图片描述

4.不足和可改进之处

1.没有添加Qtxlsx包。故不能实现导出为Excel表格
2.后期可以将QTableWdiget改变成QTableview用以实现数据库的连接
  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值