美文网首页C++
QT重写QAbstractItemModel--Apple的学习

QT重写QAbstractItemModel--Apple的学习

作者: applecai | 来源:发表于2023-07-28 20:11 被阅读0次

一,前言

我之前说的QT要再学习的模块就是关于表格模型或表格显示的重写自定义数据模型类,它会继承QAbstractItemModel类。毕竟表格还是用的比较多的显示方式,所以重新定义它的界面才可以让工具软件更人性化,体现差异化。

二,自定义需求

按example及网上的教程及help文件来学习,然后自己写一个简单的自定义类模型。其实以前我就写过sql的数据模型,但是仅按example改了些,理解也不深入不能灵活使用。本次目的要求理解,然后可以从空白开始写。

三,遇到的问题

  1. 没有显示出TableView
    答:因为rowCount和columnCount通过item项目创建后,默认有了小框架,由于我没有设置parent,所以返回值为0,导致无法显示,改成直接显示列表的行数,及固定的2列即可解决问题。
    if (!parent.isValid())
       return 0;
  1. 好奇parent是什么时候赋值的
    答:调试了example,是在index函数中设置了parent。那么index又是什么调用的呢!如下在刷新的界面的时候会一直调用。


    image.png
  2. 这些重写的函数,哪些可以提供格式的多样化?
    答:主要是data和setdata函数。核心是对不同枚举对象的显示和编辑处理。


    image.png

四,输出物

我先做一个简单的,没有parent的数据模型


image.png

五,小结

安装包有example真的就简单很多了,毕竟有些内容的理解需要通过实验来进行闭环验证,但是我发现一个漏洞,就是若没有example的话,我要怎么才能查出为什么不显示的问题呢!因为函数间的调用关系我并不清楚,help文档也没看到,而且也没看过源码,所以这是将来要找机会解决的问题,否则若有bug,我只能靠猜了,效率会很低,是否还可以问chatgpt呢,哈哈~

相关文章

  • Qt5学习地址

    Qt 学习之路 2(1):序(Qt 学习之路 2(1):序) Qt 学习之路 2(2):Qt 简介(Qt 学习之路...

  • 2020-01-18

    计划: 1.Qt语言学习 QT怎么学习 初学QT怎么学 Qt学习资料 2.c primer plus了解 3. 4...

  • QT

    《Qt基础教程之Qt学习之路》 - 欧阳磊 - CSDN博客

  • Qt 模型/视图架构

    Qt Model/View 学习笔记很好的文章基本是对Qt Model/View文档的翻译总结:(转)Qt Mod...

  • [转] QT USB学习

    转载 QT USB学习USB学习

  • mac下安装抓包工具Wireshark、Charles

    Wireshark已经用Qt重写,如果你有Homebrew,那么只需要 然后跟着指令来,直到装好。 使用方法GUI...

  • 小白学qml 1

    前言 作为小白,学习qml真的是非常的简单,快速。 Qt Quick是Qt5中⽤户界⾯技术的涵盖。 Qt Quic...

  • Qt学习-(基础)

    Qt学习 Qt是什么 Qt是一个跨平台的C++图形用户界面库,通过变以来跨平台,实现一个Qt支持Unix,Linu...

  • [转]Qt学习之样式表

    Qt学习之样式表

  • python使用日志系统--Apple的学习笔记

    一,前言 之前QT工程已经学习了日志系统35.QT重定向日志系统--Apple的学习笔记[https://www....

网友评论

    本文标题:QT重写QAbstractItemModel--Apple的学习

    本文链接:https://www.haomeiwen.com/subject/bkrdpdtx.html