Qt5 simple calculator design example
1. Create project
2. Interface design
3. Code logic design
4. Project configuration
5. Compile
1. Create a project,
insert a picture description here
2. Interface design
3. Code logic design.
Write the code.
Right-click the button-go to the source.
A function
that jumps to the button will be automatically generated. Generate all button response functions.
Fill in the corresponding content in the button response function.
Define the result, operand 1, operand 2, and save the symbol variable
4. Project configuration
Generate exe file
Set generation directory
5. Compile
6. Generate execution library
Enter the generated exe file directory
Import the qt runtime library and enter the following command line: windeployqt program name and hit enter
Just compress the directory and send it to others to run directly
源代码
Mainwindow.cpp
#include “mainwindow.h”
#include “ui_mainwindow.h”
#include “stdio.h”
external long result;
external int num1, num2, ope;
int *num_p = &num1;
char dis_buf[100] = {0};
static void update_dis(void)
{
//sprintf(dis_buf,"%d%c%d",);
//ui->dis->setText(dis_buf);
}
-
MainWindow::MainWindow(QWidget *parent)
-
QMainWindow (parent)
, ui (new Ui :: MainWindow)
{
ui-> setupUi (this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_key0_clicked()
{
*num_p = 0;
ui->dis->setText(“0”);
}
void MainWindow::on_key1_clicked()
{
*num_p = 1;
ui->dis->setText(“1”);
}
void MainWindow::on_key2_clicked()
{
*num_p = 2;
ui->dis->setText(“2”);
}
void MainWindow::on_key3_clicked()
{
*num_p = 3;
ui->dis->setText(“3”);
}
void MainWindow::on_key4_clicked()
{
*num_p = 4;
ui->dis->setText(“4”);
}
void MainWindow::on_key5_clicked()
{
*num_p = 5;
ui->dis->setText(“5”);
}
void MainWindow::on_key6_clicked()
{
*num_p = 6;
ui->dis->setText(“6”);
}
void MainWindow::on_key7_clicked()
{
*num_p = 7;
ui->dis->setText(“7”);
}
void MainWindow::on_key8_clicked()
{
*num_p = 8;
ui->dis->setText(“8”);
}
void MainWindow::on_key9_clicked()
{
*num_p = 9;
ui->dis->setText(“9”);
}
void MainWindow::on_key_dot_clicked()
{
ui->dis->setText(".");
}
void MainWindow::on_key_eq_clicked()
{
switch (ope) {
case -1: break;
case 0:result = num1+num2;
break;
case 1:result = num1-num2;
break;
case 2:result = num1*num2;
break;
case 3:result = num1/num2;
break;
}
sprintf(dis_buf,“结果:%d”,result);
ui->dis->setText(dis_buf);
num_p = &num1;
}
void MainWindow::on_sq_clicked()
{
}
void MainWindow::on_index_clicked()
{
}
void MainWindow::on_com_clicked()
{
}
void MainWindow::on_clean_clicked()
{
num1 = 0;
num2 = 0;
ope = -1;
result = 0;
ui->dis->setText(“0”);
}
void MainWindow::on_add_clicked()
{
ope = 0;
ui->dis->setText("+");
num_p = &num2;
}
void MainWindow::on_dec_clicked()
{
ope = 1;
ui->dis->setText("-");
num_p = &num2;
}
void MainWindow::on_mult_clicked()
{
ope = 2;
ui->dis->setText(“x”);
num_p = &num2;
}
void MainWindow::on_div_clicked()
{
ope = 3;
ui->dis->setText("/");
num_p = &num2;
}
Main.cpp
#include “mainwindow.h”
#include
long result = 0;
int num1 = 0,num2 = 0,ope = -1;
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}