qt项目记账本

目录

设置图标

构置界面

 mainwindow.h

main.cpp

mainwindow.cpp

效果


这个项目我是用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_H

main.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版权协议,转载请附上原文出处链接和本声明。