qt项目记账本

简介: qt项目记账本

这个项目我是用mainwindow,在创建项目的时候要注意,如果有小伙伴想用其他创建项目也是可以的,但要记得改一下我mainwindow.cpp中的类名:MainWindow->你的类型。


设置图标


我们只需把中意的图片放在项目的目录下,并且在pro文件中增加下列代码


RC_ICONS = logo.ico//logo是图片名字

构置界面


这一步直接画就好了

mainwindow.h


1. #ifndef MAINWINDOW_H
2. #define MAINWINDOW_H
3. 
4. #include <QMainWindow>
5. 
6. QT_BEGIN_NAMESPACE
7. namespace Ui { class MainWindow; }
8. QT_END_NAMESPACE
9. 
10. class MainWindow : public QMainWindow
11. {
12.     Q_OBJECT
13. 
14. 
15. public:
16. MainWindow(QWidget *parent = nullptr);
17.     ~MainWindow();
18. 
19. private:
20.     Ui::MainWindow *ui;
21. 
22. private slots:
23. void pushButton();//保存按钮
24. void pushButton_2();//清除按钮
25. 
26. 
27. };
28. #endif // MAINWINDOW_H

main.cpp


这里不需要改动

1. #include "mainwindow.h"
2. #include<QDebug>
3. #include <QApplication>
4. #include<QTextCodec>
5. 
6. int main(int argc, char *argv[])
7. {
8. QApplication a(argc, argv);
9.     MainWindow w;
10.     w.show();
11. return a.exec();
12. }

mainwindow.cpp


1. #include "mainwindow.h"
2. #include "ui_mainwindow.h"
3. #include "QDir"
4. #include "QFileDialog"
5. #include "QTextStream"
6. #include "QFile"
7. #include<QDebug>
8. #include<QDate>
9. #include<QFile>
10. #include<QDateTime>
11. 
12. MainWindow::MainWindow(QWidget *parent)
13.     : QMainWindow(parent)
14.     , ui(new Ui::MainWindow)
15. {
16.     ui->setupUi(this);
17.     setWindowTitle("记账小程序");//标题
18.     setFixedSize(600,600);//大小
19. //连接按钮和函数
20.     connect(ui->pushButton,SIGNAL(clicked()),this,SLOT(pushButton()));
21.     connect(ui->pushButton_2,SIGNAL(clicked()),this,SLOT(pushButton_2()));
22. }
23. 
24. 
25. MainWindow::~MainWindow()
26. {
27. delete ui;
28. }
29. 
30. void MainWindow::pushButton()
31. {
32. //读入文本框内容
33.     QString s1 = ui->lineEdit->text();
34.     QString s2 = ui->lineEdit_2->text();
35.     QString s3 = ui->lineEdit_3->text();
36.     QString s4 = ui->lineEdit_4->text();
37.     QString s5 = ui->lineEdit_5->text();
38. 
39. //获取时间
40.     QDateTime curDateTime=QDateTime::currentDateTime();
41.     QString time = curDateTime.toString("yyyy.MM.dd hh:mm:ss.zzz ddd");
42. 
43. //计算花费总和并显示
44.     double s6 = s1.toDouble()+s2.toDouble()+ s3.toDouble()+ s4.toDouble()+ s5.toDouble();
45.     QString b;
46.     b =  QString::number(s6,2,1);
47.     ui->lineEdit_6->setText(b);
48. 
49. //写入文件
50.     QFile file("C:/Users/ASUS/Desktop/花销簿/12月.txt");
51. if (file.open(QIODevice::ReadWrite | QIODevice::Append))
52.     {
53.       QTextStream stream(&file);
54.       stream <<time<< endl;
55.       stream <<"food:"<<s1<< endl;
56.       stream << "living goods:" <<s2<< endl;
57.       stream << "studing goods:" <<s3<< endl;
58.       stream << "snakes:" <<s4<< endl;
59.       stream << "others:" <<s5<< endl;
60.       stream << "total:" <<s6<< endl<<endl;
61.     }
62. file.close();
63. }
64. 
65. void MainWindow::pushButton_2(){
66. //清除文本框内容
67.     ui->lineEdit->clear();
68.     ui->lineEdit_2->clear();
69.     ui->lineEdit_3->clear();
70.     ui->lineEdit_4->clear();
71.     ui->lineEdit_5->clear();
72.     ui->lineEdit_6->clear();
73. }

完工了,源代码的连接在这里记账本,不要积分的呦。项目还有些不足,欢迎大佬前来指点

效果


目录
相关文章
|
2月前
|
网络协议 容器
【qt】 TCP编程小项目
【qt】 TCP编程小项目
42 0
|
5月前
【Qt 学习笔记】使用QtCreator创建及运行项目 | 项目初始代码解释
【Qt 学习笔记】使用QtCreator创建及运行项目 | 项目初始代码解释
843 1
|
5月前
【QT】创建、打开QT项目只显示.pro文件的问题解决
【QT】创建、打开QT项目只显示.pro文件的问题解决
480 0
|
2月前
【qt】平面CAD(计算机辅助设计 )项目 上
【qt】平面CAD(计算机辅助设计 )项目 上
29 0
|
2月前
【qt】项目移植
【qt】项目移植
17 0
【qt】项目移植
|
2月前
【Qt项目专栏】贪吃蛇小游戏1.0
【Qt项目专栏】贪吃蛇小游戏1.0
65 5
|
2月前
CMake自动打包--Qt项目
CMake自动打包--Qt项目
44 0
|
2月前
|
数据安全/隐私保护
【qt】考试系统项目
【qt】考试系统项目
33 0
|
2月前
|
XML Linux 程序员
【Qt】项目代码
【Qt】项目代码
|
4月前
|
C++ Windows
第1个Qt项目:计算器
第1个Qt项目:计算器
第1个Qt项目:计算器
下一篇
无影云桌面