用Qt的QTableView+QStandardItemModel+QStyledItemDelegate实现类似Excel表格的界面,在parser 模块中提供解析表格单元格输入的公式。单元格编辑结束后按回车进行计算和更新显示。
效果如下:
支持的公式计算可以深度嵌套,目前parser模块中仅提供了+-*/^运算和类似Excel的sum, power函数,其他需要的函数可以自行参考现有的设计去添加,在现有的设计下添加起来也非常容易。
当前parser基于Qt的数据结构设计,如果要改为纯c++的数据结构实现,将对应的Qt数据结构如QMap替换成std::map即可。
parser提供了较为强大的公式解析能力,因此支持用户任意的公式嵌套调用。
输入:=1+A1/2+sum(1,1,sum(A1,2,power(A1,3)))/power(A2,2)
回车执行计算。
源码干货:
链接:https://pan.baidu.com/s/1mU9NbWsTBEJkR6pqI7Fj9A?pwd=8z93
提取码:8z93