首页 > 其他分享 >qt modelView架构优势,对比qtableview与qtablewidget

qt modelView架构优势,对比qtableview与qtablewidget

时间:2023-02-03 22:14:01浏览次数:35  
标签:QTableWidget tbWg qt modelView qtablewidget list new model col

首先我们看测试数据:

 

两者的差异很明显,数据量大时,QTableView优于QTableWidget;

虽然数据量小的时候差异不大,使用分页的话两者差距很小,但还是推荐QTableView。

QTableView核心代码:

    QStandardItemModel *in_model = new QStandardItemModel();

    in_model->setHorizontalHeaderLabels(in_list);

    auto in_newItem = new QStandardItem(in_list.at(col));
    in_model->setItem(in_row, in_col, in_newItem);

    FreezeTableWidget *in_tableView = new FreezeTableWidget(in_model);

QTableWidget核心代码:

    QTableWidget *in_tbWg = new QTableWidget();
    QTableWidgetItem *in_model2 = nullptr;

    in_tbWg->setColumnCount(in_list.size());
    in_tbWg->setHorizontalHeaderLabels(in_list);

    in_tbWg->insertRow(in_row);
in_model2 = new QTableWidgetItem(in_list.at(in_col)); in_tbWg->setItem(in_row, in_col, in_model2);

 

标签:QTableWidget,tbWg,qt,modelView,qtablewidget,list,new,model,col
From: https://www.cnblogs.com/Kevinsh-Lee/p/17090564.html

相关文章

  • Qt实现 剪映 桌面端的界面效果
    下方是个人实现的桌面端剪映效果,个人觉得自己实现的比较好看,原本的字体太小了再上一张桌面端剪映原版界面原本的界面实现看起来确实字体偏小不好看,因为发现原本也是Qt实现......
  • Matlab编译生成DLL,供QT调用
    QT5.15.2MatlabR2022a一、使用matlab生成dll准备好matlab接口命令行窗口敲入以下命令:  弹出以下对话框 选择LibraryCompiler弹出以下对话框  选择C......
  • 强制去掉Qt的运行环境信息
    基于Qt6开发的应用程序会依赖libQt6Core.so.6,动态库so文件中包含有运行环境信息,包含有运行所需的linuxkernel最低版本,可通过objdump工具查看。在Docker环境中,glibc的版本......
  • Qt Creator9.0生成工程后没有.pro文件
    QtCreator9.0默认建立的widget项目只有CMakeLists.txt文件,没有pro文件发现生成工程文件时默认选择的是cmake,不是qmake导致的这个问题,将Builldsystem中转化成qmake之后......
  • 《ATK-DLRV1126Qt开发环境搭建》第一章 Ubuntu下安装Qt Creator​
    Ubuntu下安装QtCreator1.1安装Qt​进入下载页面(注意如果找不到下载链接,我们就进行这个顶层目录一个个目录找,因为Qt下载链接会变动),选择Linux的安装包下载。使用迅雷下载再拷......
  • 编译Qt Creator 工程
    //build1.下载QtCreator源码2.2.下载Qt库源码,下载地址http://download.qt.io/archive/qt/5.6/5.6.1/single/,下载qt-everywhere-opensource-src-5.6.1.zip。3.建立空......
  • 【嵌入式】微芯旺KungFu32A156MQT蜂鸣器演奏音乐
    #include"system_init.h"#include"kf32a156_gpio.h"intmain(){SystemInit(120);///<初始化系统时钟为120Msystick_delay_init(120);///<设置SysTick定时器......
  • Qt基础
    基本概念Qt是一个跨平台的C++应用程序开发框架;是标准C++的扩展,C++的语法在Qt中都是支持的。良好封装机制使得Qt的模块化程度非常高,可重用性较好,可以快速上手。Qt......
  • 手把手教大家写书写一个Mqtt网关
    摘要:物联网是现在比较热门的软件领域,众多物联网厂商都有自己的物联网平台,而物联网平台其中一个核心的模块就是Mqtt网关。本文分享自华为云社区《​​一文带你掌握物联网mqtt......
  • 手把手教大家写书写一个Mqtt网关
    摘要:物联网是现在比较热门的软件领域,众多物联网厂商都有自己的物联网平台,而物联网平台其中一个核心的模块就是Mqtt网关。本文分享自华为云社区《一文带你掌握物联网mqtt网......