0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

嵌入式Qt-表格使用测试

码农爱学习 来源:码农爱学习 作者:码农爱学习 2023-05-14 12:27 次阅读

本篇介绍Qt中表格组件的使用,需要用到QTableWidget。

通过一个实例来介绍QTableWidget,下图是表格使用的测试效果。

1 QTableWidget

QTableWidget是Qt中的表格组件类,相关使用函数可以参考Qt Creator中自带的帮助文档。

2 代码编写

2.1 图形界面设置

从左侧的ItemWidgets中,拖出一个Table Widget放到界面中,然后设置合适的大小。

另外,为了方便测试数据的插入,可以添加一个按钮来每次插入一条数据,例如插入一条书籍的信息

Table Widget放入后,可以在ui界面双击这个控件来继续编辑表格的行和列等信息,也可以通过代码的方式来设置表格的信息,本篇通过代码编写的方式,再对Table Widget进行相关信息的初始化。

2.2 表格初始化与数据插入

表格初始化放到界面类(如Widget)的构造函数中,用于初始化表格的表头,字体大小,行宽度等。

通过按下按钮触发一条数据插入。

//表格初始化
ui->tableWidget->setColumnCount(4);
ui->tableWidget->setFont(QFont("宋体", 9));
ui->tableWidget->setHorizontalHeaderLabels(QStringList() << "id" << "书名" << "出版社" << "价格");
ui->tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
ui->tableWidget->setColumnWidth(0,100);
ui->tableWidget->setColumnWidth(1,260);
ui->lineEditID->setText(QString("%1").arg(m_bookID, 4, 10, QLatin1Char('0'))); //4位10进制, 前面补0//按下插入按钮后的槽函数
void Widget::on_pushButton_clicked()
{
    int curRow = ui->tableWidget->rowCount();
    ui->tableWidget->insertRow(curRow);
    ui->tableWidget->setItem(curRow, 0, new QTableWidgetItem(ui->lineEditID->text().toUtf8().data()));
    ui->tableWidget->setItem(curRow, 1, new QTableWidgetItem(ui->textEditName->toPlainText()));
    ui->tableWidget->setItem(curRow, 2, new QTableWidgetItem(ui->textEditPublisher->toPlainText()));
    ui->tableWidget->setItem(curRow, 3, new QTableWidgetItem(ui->lineEditPrice->text().toUtf8().data()));
​
    ui->lineEditID->setText(QString("%1").arg(++m_bookID, 4, 10, QLatin1Char('0'))); //4位10进制, 前面补0
}

2.3 滚动条样式修改

当表格中的数据不能在一个表格窗口显示出来时,QTableWidget会自动产生滚动条,但滚动条的样式可能不完全符合自己的需求,因此可以通过自定义滚动条样式。

#include

3 演示

可以先在Windows平台上运行查看显示效果。

然后将程序进行交叉编译,将编译结果放到Linux板子中运行。

交叉编译的过程可参考之前的文章:

嵌入式Linux-Qt环境搭建

嵌入式Qt-动手编写并运行自己的第1个ARM-Qt程序

通过指令来进行交叉编译:

/home/xxpcb/myTest/imx6ull/otherlib/qt/qt-everywhere-src-5.12.9/arm-qt/bin/qmake

在i.MX6ULL板子中的测试视频如下:

4 总结

本篇介绍了Qt中QTable Widget这个表格组件的使用,后续可增加SQLite数据库功能,利用表格可以直观的展示出嵌入式设备的数据库中的数据信息。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 测试
    +关注

    关注

    8

    文章

    4458

    浏览量

    125132
  • 嵌入式
    +关注

    关注

    4984

    文章

    18300

    浏览量

    288656
  • 函数
    +关注

    关注

    3

    文章

    3911

    浏览量

    61313
  • 表格
    +关注

    关注

    0

    文章

    13

    浏览量

    8663
  • Qt
    Qt
    +关注

    关注

    1

    文章

    299

    浏览量

    37341
收藏 人收藏

    评论

    相关推荐

    嵌入式Linux-Qt环境搭建 Qt程序运行测试

    本编介绍如何在嵌入式Linux开发板上配置Qt运行环境,并进行Qt程序运行测试
    的头像 发表于 06-01 09:07 6682次阅读
    <b class='flag-5'>嵌入式</b>Linux-<b class='flag-5'>Qt</b>环境搭建 <b class='flag-5'>Qt</b>程序运行<b class='flag-5'>测试</b>

    嵌入式Qt-做一个秒表

    本篇通过一个秒表的实例,介绍了如何使用Qt Creator的UI界面设计功能,进行Qt的开发,并将代码进行交叉编译,放入i.MX6ULL的Linux环境中测试运行情况。
    的头像 发表于 09-08 08:52 1829次阅读
    <b class='flag-5'>嵌入式</b><b class='flag-5'>Qt-</b>做一个秒表

    嵌入式Qt-交叉编译FFmpeg与视频播放测试

    本篇介绍了嵌入式Qt播放视频的准备工作:交叉编译FFmpeg库并移植到Linux板子中,并先通过ffmpeg指令测试视频播放效果。下篇将尝试设计Qt界面来结合FFmpeg进行视频的播放
    的头像 发表于 09-15 02:08 1903次阅读
    <b class='flag-5'>嵌入式</b><b class='flag-5'>Qt-</b>交叉编译FFmpeg与视频播放<b class='flag-5'>测试</b>

    [下载]嵌入式QT编程

    嵌入式QT编程(mini2440)
    发表于 11-07 17:14

    Qt4图形设计与嵌入式开发

    Qt4图形设计与嵌入式开发,Qt4图形设计与嵌入式开发
    发表于 05-14 11:27

    Qt嵌入式图形开发

    `Qt嵌入式图形开发...................`
    发表于 06-12 09:44

    嵌入式QT基础视频教程免费分享!

    嵌入式QT基础视频教程免费分享!首先给大家介绍一下QT的简介,Qt 是一个用于桌面系统和嵌入式开发的跨平台应用程序框架。它包括一个直观的AP
    发表于 07-05 13:05

    基于Qt/Embedded的嵌入式控制界面是怎样开发的?

    基于Qt/Embedded的嵌入式控制界面是怎样开发的?嵌入式控制界面有什么优点?
    发表于 04-27 06:43

    嵌入式linux部署qt的几个疑问

    嵌入式linux部署qt几个疑问在windows系统里编好的QT程序,经过交叉编译后能直接运行在板子上吗?还是板子需要弄个QT环境啥的?就是往里面安个相同版本的
    发表于 10-27 09:47

    嵌入式实习-基于QT的猜数字设计

    嵌入式实习-基于QT的猜数字设计 嵌入式实习-基于QT的俄罗斯方块设计 嵌入式实习-基于QT
    发表于 10-27 06:47

    嵌入式Linux的Qt相关资料分享

    嵌入式Linux的Qt嵌入式Linux的Qt配置特定设备嵌入式Linux设备的平台插件EGLFSLinuxFB输入使用libinput鼠标M
    发表于 11-04 08:22

    基于QT嵌入式linux图形应用软件设计

    嵌入式数据库或图形软件开发有兴趣,可以进一步学习嵌入式linux数据库开发或基于 QT嵌入式linux图形应用软件设计。...
    发表于 11-05 08:11

    Qt Creator For嵌入式Linux搭建流程

    Qt Creator For 嵌入式Linux搭建流程1.安装QtCreator2.编译Qt for embbed3.编译gdb及gdbserver4.使用QtCreator创建C++工程5.远程
    发表于 11-05 08:15

    嵌入式QT是什么?有何功能

    嵌入式QT基础视频教程免费分享! 首先给大家介绍一下QT的简介,Qt 是一个用于桌面系统和嵌入式开发的跨平台应用程序框架。它包括一个直观的A
    发表于 12-23 07:35

    QT嵌入式环境的搭建

    移植QT5.6到嵌入式开发板(史上最详细的QT移植教程)目前网上的大多数 QT 移植教程还都停留在 qt4.8 版本,或者还有更老的 Qto
    发表于 12-24 07:26