首页 Qt官方示例解析系列12:Calculator计算器
文章
取消

Qt官方示例解析系列12:Calculator计算器

实现了什么功能

一个计算器

部分源码解析

使用了自定义的QToolButton,有什么特殊地方:统一设置了sizePolicy,还有对默认的大小进行了调整。

unaryOperator 一元操作符,比如平方std::pow(operand, 2.0);和倒数计算

1
2
enum { NumDigitButtons = 10 };
Button *digitButtons[NumDigitButtons];//数组大小可用enum

createButton方法接收一个模板参数,该参数是一个函数指针。5.15.2版本是用const char *member接收SLOT(pointClicked())

正负号要用 tr(“\302\261”)

MC=clearMemory

MR=readMemory

MS=setMemory 计算出最终结果后,将结果存储到内存中

M+=addToMemory 计算出最终结果后,将结果加到内存中

有数字键盘上数字1-9的布局计算方法。

通过sender()获取信号发送者,然后通过qobject_cast转换成Button类型,然后获取text

backspace删除使用text.chop(1);删除最后一个字符

参考

https://doc.qt.io/qt-6/qtwidgets-widgets-calculator-example.html

本文由作者按照 CC BY 4.0 进行授权