目录
这个项目我是用mainwindow,在创建项目的时候要注意,如果有小伙伴想用其他创建项目也是可以的,但要记得改一下我mainwindow.cpp中的类名:MainWindow->你的类型。
设置图标
我们只需把中意的图片放在项目的目录下,并且在pro文件中增加下列代码
RC_ICONS = logo.ico//logo是图片名字构置界面
这一步直接画就好了

mainwindow.h
#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:
Ui::MainWindow *ui;
private slots:
void pushButton();//保存按钮
void pushButton_2();//清除按钮
};
#endif // MAINWINDOW_Hmain.cpp
这里不需要改动
#include "mainwindow.h"
#include<QDebug>
#include <QApplication>
#include<QTextCodec>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QDir"
#include "QFileDialog"
#include "QTextStream"
#include "QFile"
#include<QDebug>
#include<QDate>
#include<QFile>
#include<QDateTime>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
setWindowTitle("记账小程序");//标题
setFixedSize(600,600);//大小
//连接按钮和函数
connect(ui->pushButton,SIGNAL(clicked()),this,SLOT(pushButton()));
connect(ui->pushButton_2,SIGNAL(clicked()),this,SLOT(pushButton_2()));
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::pushButton()
{
//读入文本框内容
QString s1 = ui->lineEdit->text();
QString s2 = ui->lineEdit_2->text();
QString s3 = ui->lineEdit_3->text();
QString s4 = ui->lineEdit_4->text();
QString s5 = ui->lineEdit_5->text();
//获取时间
QDateTime curDateTime=QDateTime::currentDateTime();
QString time = curDateTime.toString("yyyy.MM.dd hh:mm:ss.zzz ddd");
//计算花费总和并显示
double s6 = s1.toDouble()+s2.toDouble()+ s3.toDouble()+ s4.toDouble()+ s5.toDouble();
QString b;
b = QString::number(s6,2,1);
ui->lineEdit_6->setText(b);
//写入文件
QFile file("C:/Users/ASUS/Desktop/花销簿/12月.txt");
if (file.open(QIODevice::ReadWrite | QIODevice::Append))
{
QTextStream stream(&file);
stream <<time<< endl;
stream <<"food:"<<s1<< endl;
stream << "living goods:" <<s2<< endl;
stream << "studing goods:" <<s3<< endl;
stream << "snakes:" <<s4<< endl;
stream << "others:" <<s5<< endl;
stream << "total:" <<s6<< endl<<endl;
}
file.close();
}
void MainWindow::pushButton_2(){
//清除文本框内容
ui->lineEdit->clear();
ui->lineEdit_2->clear();
ui->lineEdit_3->clear();
ui->lineEdit_4->clear();
ui->lineEdit_5->clear();
ui->lineEdit_6->clear();
}
完工了,源代码的连接在这里记账本,不要积分的呦。项目还有些不足,欢迎大佬前来指点
效果


版权声明:本文为qq_51118755原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。