zoukankan      html  css  js  c++  java
  • 【QT】C++ GUI Qt4 学习笔记5

    折腾了好几天,终于把这本书的第三章和第四章给看了个大概。

    里面的函数调用关系可谓是复杂。

    整理了一部分的函数关系如下:

    cell关系清理
    
    data(role) 返回应该显示的值 或者对齐方式 或者公式
         ->value() 单元格的值,如果是旧的就重新获得 值给cachedValue并返回 对输入的以‘开头和 = 开头的做特殊处理
                 ->formula() 获得单元格的Edit role
                         ->data(Edit role)
                 ->evalExpression() 计算表达式的值
    
    
    setFormula(formula) //设置单元格的公式
         -> setData(EditRole, formula) 对编辑角色调用setData 
             -> QTableWidgetItem::setData(role value) 将单元格 用给定的公式 以给定的值 赋值 
             ->setDirty() 如果赋值的是EditRole 把值设为旧的

    问题:

    ??data()在哪里被调用
    Qt::DisplayRole
    Qt::TextAlignmentRole 还在哪里出现过

    
    

    ??QTableWigetItem 中 text() 和 data()的区别
    ??把值设为旧的有什么用处?

    spreadsheet关系清理
    
    Spreadsheet()
         |->QTableWidget::setItemPrototype(new Cell) //设置每个单元格的类型 
         |->SelectionMode() //设置选择模式 Qt自带
         |->somethingChanged() //槽函数
         |      |->recalculate() //重新计算
         |      |     |->cell() //把单元格转换为Cell形式
         |      |     |     ->QTableWidget::item()
         |      |     |->Cell::setDirty() //把所有有值的都设为旧的
         |      |     |->viewport()->update() 更新 ??
         |      |
         |      |->modified() //信号
         |
         |->clear() //清空整张表
                |->setRowCount(0) 
                |->setColumnCount(0)
                |->setRowCount(RowCount); //设置有多少行 Qt自带
                |->setColumnCount(ColumnCount); //设置有多少列 Qt自带
              
    
    setAutoRecalculate() //如果自动重算是true就调用下面算子
         ->recalculate() 

    里面有些问题我还没有想通。标了问号。

    对于这些模块,从小到大整理一下:

    最小的是 QTableWigetItem 就是二维表格QTableWidget的自带单元格的表示,但是输入什么就显示什么,没有什么功能

    然后是    Cell 是扩展的QTableWigetItem  里面加入了对特殊输入的格式处理和表达式计算功能

    再后是    spreadsheet扩展自二维表格QTableWidget 采用了Cell, 加入了复制、 粘贴、 查找、 排序、 保存、 读取的功能。

    最后是    MainWindow的功能主要是界面的显示 界面按钮与功能的对接

  • 相关阅读:
    Linux的命令技巧
    MAC地址表、ARP缓存表以及路由表
    边缘触发(Edge Trigger)和条件触发(Level Trigger)
    vue-router跳转页面
    正则表达式(简单易懂篇)
    Markdown快速使用指南
    WEB前端资源集(二)
    WEB前端资源集(一)
    js判断移动端与pc端
    js原声快速实现选项卡
  • 原文地址:https://www.cnblogs.com/dplearning/p/4081780.html
Copyright © 2011-2022 走看看