目录
写在前面
上篇文章写了C++中如何实现简单的计算器,先用C++写看来我的选择是正确的,明白了其中的原理再用Qt实现是水到渠成的事,利用Qt实现计算器可视化的核心思想就是如何把在按钮上输入的表达式在文本框中读取!!
一、设计思路
用Qt实现计算器,首先得在ui界面设计一个计算器,当然也可以代码写,我觉得没必要就直接拖啦,而且槽函数也可以直接转到,非常方便。
那么首先如何将按钮上的数字和符号显示在文本框上并读取呢?用setText函数就OK啦,这里有很多种方法,我用的方法是原来文本有的加上输入的,这样就能源源不断输入了,比如点击0的槽函数:
ui->lineEdit->setText(ui->lineEdit->text() +'0');
在这其中等于号的槽函数最重要,因为点击等于号‘=’需要将表达式读取并且计算显示在文本框上,需要注意的是我们在文本框输入的数据编程环境并不能识别,需要将它转换成utf8编码的格式,而输出时又需要转换成字符串的类型:
void calculator::on_pushButtonequal_clicked()
{
string str = ui->lineEdit->text().toStdString();
double result=Stack(str);
//数字转为字符串显示在lineEdit中
ui->lineEdit->setText(QString::number(result));
}
那么到这事情就简单多啦!现在需要编写计算器的表达式计算即可,我这里另外建了一个cpp,方便书写,不懂计算器原理的可以看上篇文章 C++实现简单计算器哦。不够这次肯定是有点不一样的,多了小数点,而且我还加了三角函数的计算,这让calculate的函数参数不得不改变了,上次是两个栈,这次的字符栈我换成了字符型参数。
<
本文介绍了如何使用Qt构建一个可视化计算器,支持加减乘除、百分比、平方根以及三角函数(正弦、余弦、正切)运算,并能处理括号表达式。作者通过设置槽函数处理按钮点击,利用setText方法更新文本框内容,同时详细解释了关键代码实现,包括主窗口和计算逻辑的cpp文件。在遇到小数点和三角函数时,进行了特殊处理,如处理小数位数和转换字符串为浮点数。文章还提供了功能实现和代码示例。
最低0.47元/天 解锁文章
1644





