用QT写一个计算器
时间: 2023-07-04 10:15:42 浏览: 136
好的!以下是用QT写一个简单的计算器的基本步骤:
1. 打开QT Creator,新建一个QT Widgets Application项目。
2. 在mainwindow.ui界面上拖放QPushButton、QLabel和QLineEdit控件,用于输入、输出和计算。
3. 给QPushButton添加点击事件,实现计算功能。点击事件中获取QLineEdit中的输入,进行计算,然后将结果输出到QLabel中。
4. 编译并运行程序,测试计算器功能。
示例代码:
mainwindow.h文件:
```c++
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private slots:
void on_calculateButton_clicked();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
```
mainwindow.cpp文件:
```c++
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_calculateButton_clicked()
{
// 获取输入
QString input = ui->inputLineEdit->text();
// 计算
QString result = QString::number(eval(input.toStdString().c_str()));
// 输出结果
ui->resultLabel->setText(result);
}
```
eval函数是一个用于计算表达式的函数,可以使用Qt的QScriptEngine类来实现。该函数的实现可以参考以下示例代码:
```c++
#include <QScriptEngine>
double eval(const char* expr)
{
QScriptEngine engine;
QScriptValue result = engine.evaluate(expr);
return result.toNumber();
}
```
这样,一个简单的计算器就完成了。
阅读全文
相关推荐














