资源简介
该系统采用QT实现家庭财务管理系统,利用QSqlite轻量级数据库进行信息存储,设计到登录窗口设计,从登陆窗口到管理员窗口,普通用户窗口的切换,基本控件的应用,MVC模型的基本应用。
代码片段和文件信息
#include “changepassword.h“
#include “ui_changepassword.h“
ChangePassword::ChangePassword(QWidget *parent QString name QString *Pswd) :
QDialog(parent)
ui(new Ui::ChangePassword)
{
ui->setupUi(this);
Name = name;
OldPswd_FromPro = Pswd;
this->setAttribute(Qt::WA_DeleteOnClose); //设置为关闭时释放空间,防止恶意测试
this->setWindowtitle(“修改密码“);
}
ChangePassword::~ChangePassword()
{
delete ui;
}
QString ChangePassword::GetNewPswd()
{
return NewPswd;
}
QString ChangePassword::GetName()
{
return Name;
}
QString ChangePassword::GetOldPswd()
{
return OldPswd;
}
QString *ChangePassword::GetNewPswd_Mng()
{
return OldPswd_FromPro;
}
void ChangePassword::on_SurePushButton_clicked()
{
QString OldPswd_FromUser = ui->OldLineEdit->text().trimmed(); //输入旧密码
NewPswd = ui->NewLineEdit->text().trimmed(); //输入新密码
QString CertainPswd = ui->CertainLineEdit->text().trimmed();//输入确认的新密码
if(Name == ““)
{
if(encrypt(OldPswd_FromUser) == *OldPswd_FromPro)
{
if(NewPswd == CertainPswd && NewPswd != ““)
{
OldPswd_FromPro = new QString(NewPswd);
this->accept();
return;
}
else
{
QMessageBox::warning(this “警告“ “新密码与确认密码不符或密码为空“ QMessageBox::Ok);
return;
}
}
QMessageBox::warning(this “警告“ “旧密码错误“ QMessageBox::Ok);
return;
}
else
{
QSqlDatabase DB; //使用默认连接
DB = QSqlDatabase::addDatabase(“QSQLITE“); //添加 SQL LITE数据库驱动
DB.setDatabaseName(“../familyDb.db“); //设置数据库名
if (!DB.open()) //打开数据库
{
qDebug()<<“在密码对话框数据库无法打开!“;
return ;
}
else
{
qDebug()<<“在密码对话框数据库成功打开!“;
}
QSqlQuery query(DB);
query.exec(“select * from familybase“);
while(query.next())
{
if(query.value(7).toString() == OldPswd)
{
if(NewPswd == CertainPswd && NewPswd != ““)
{
this->accept();
return;
}
else
{
QMessageBox::warning(this “警告“ “新密码与确认密码不符或密码为空“ QMessageBox::Ok);
return;
}
}
}
QMessageBox::warning(this “警告“ “旧密码错误“ QMessageBox::Ok);
return;
}
}
QString ChangePassword::encrypt(const QString &str)
{//字符串MD5算法加密
QByteArray btArray;
btArray.append(str);//加入原始字符串
QCryptographicHash hash(QCryptographicHash::Md5); //Md5加密算法
hash.addData(btArray); //添加数据到加密哈希值
QByteArray resultArray =hash.result(); //返回最终的哈希值
QString md5 =resultArray.toHex();//转换为16进制字符串
return md5;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3330 2019-10-13 22:24 changepassword.cpp
文件 1044 2019-10-13 22:24 changepassword.h
文件 6244 2019-10-13 15:02 changepassword.ui
文件 1606 2019-10-13 14:12 easyFamily.pro
文件 24889 2019-10-13 23:18 easyFamily.pro.user
文件 24888 2019-09-24 13:22 easyFamily.pro.user.4.10-pre1
文件 21352 2019-10-13 10:18 infoentry.cpp
文件 4419 2019-10-10 15:43 infoentry.h
文件 22538 2019-10-13 12:09 infoentry.ui
文件 6267 2019-10-13 22:26 logindlg.cpp
文件 1905 2019-10-14 23:22 logindlg.h
文件 5175 2019-10-13 21:26 logindlg.ui
文件 767 2019-10-13 00:13 main.cpp
文件 16080 2019-10-13 23:16 mainwindow.cpp
文件 2740 2019-10-13 23:16 mainwindow.h
文件 26728 2019-10-13 21:28 mainwindow.ui
文件 7876 2019-10-13 23:18 subwindow.cpp
文件 1551 2019-10-13 23:18 subwindow.h
文件 7107 2019-10-13 14:33 subwindow.ui
相关资源
- QT使用POST传递数据
- 中文SQLite参考书册
- delphi调用wxsqlite3
- sqlite3 64位动态库包含 .lib文件
- mysql5.7驱动.rar
- Qt实现的一个简单的学生学籍管理系统
- 实验十 使用SQLite数据库存储数据
- Inside SQLite(SQLite技术内幕) 原版+个
- 一个较完整的Qt用户登录界面设计
- QT用户登录界面源代码
- ViewPager+Fragment+ListView+sqlite案例
- StudentInformationManagementSystem.zip
- SQLiteSpy工具
- 微信数据库查看工具sqlcipher
- 简单的超市收银系统,QT5.3+Ubuntu14.0
- Sqlite存储图片
-
Qt 动态解析xm
l文件 左侧显示在QTr - SQLite数据库的增删改查demo
- 大一大二 基于qt的学生管理系统
- QT实现车辆管理系统,数据库使用SQ
- windows、linux下sqlite远程管理工具及服
- 基于ios的图书管理系统
- sqlite-netFx451-setup-bundle-x86-2013-1.0.105.
- 通过sqlite数据库实现的曾珊盖查的通
- sqlite3Linux版本
- sqlcipher.exe 用来打开微信数据库
- QT自定义tableModel和使用sqltablemodel
- 支持加密的sqlite 最新版本sqlite3.7.7.
- [Jay A. Kreibich] Using SQLite Small.Fast.Reli
- sqlite3 x84 x64 开发包
评论
共有 条评论