您现在的位置是:首页 > 数码 > 

qt实现汽车销售管理系统(一)

2025-07-18 11:03:47
qt实现汽车销售管理系统(一) 实现思路 运行程序–>登录界面–>验证用户名和密码–>进入主界面 数据库设计 数据库的实现 创建一个cardb数据库,并使用该数据库 create database cardb; use cardb; 创建用户表(user),并往里面插入数据 create table user(id

qt实现汽车销售管理系统(一)

实现思路

运行程序–>登录界面–>验证用户名和密码–>进入主界面

数据库设计

数据库的实现

创建一个cardb数据库,并使用该数据库

create database cardb;
use cardb;

创建用户表(user),并往里面插入数据

create table user(id int OT ULL AUTO_ICREMET primary key,user varchar(20),pwd varchar(20));insert into user(user,pwd) values(	tom	,	tom	);
insert into user(user,pwd) values(	djx	,	djx	);
insert into user(user,pwd) values(	xiu	,	xiu	);

创建厂商表(factory),并插入数据

create table factory(id int not null auto_increment primary key, name varchar(255))EGIE=InnoDB DEFAULT CHARSET=utf8;
insert into factory(name) values(	大众	); 
insert into factory(name) values(	华晨宝马	);
insert into factory(name) values(	东风日产	);
insert into factory(name) values(	林肯	);

创建品牌表(brand),并插入数据

create table brand(id int not null auto_increment primary key,name varchar(255),fname varchar(255),color varchar(255),price int not null,sum int not null,sell int not null,last int not null)EGIE=InnoDB DEFAULT CHARSET=utf8;
insert into brand(name,fname,color,price,sum,sell,last) values(	甲壳虫	,	大众	,	白	,20,520,250,270);insert into brand(name,fname,color,price,sum,sell,last) values(	奥迪A6	,	大众	,	金	,20,520,250,270);insert into brand(name,fname,color,price,sum,sell,last) values(	宝马X	,	华晨宝马	,	白	,5,520,250,270);
insert into brand(name,fname,color,price,sum,sell,last) values(	宝马X4	,	华晨宝马	,	 金,5,520,250,270);
insert into brand(name,fname,color,price,sum,sell,last) values(	贵士	,	东风日产	,	金	,20,520,250,270);
insert into brand(name,fname,color,price,sum,sell,last) values(	林肯MKC	,	林肯	,	白	,6,520,250,270);

登录界面的实现

登录界面如下所示:

  1. 链接数据库
bool login::connectDB(){m_db = QSqlDatabase::addDatabase(QMYSQL);//设置链接数据库的主机名,数据库名,用户名和密码m_db.setHostame(127.0.0.1);m_db.setDatabaseame(cardb);m_db.setUserame(djx);m_db.setPassword(111);if(m_() == false){QMessageBox::critical(this,ERROR,链接数据库失败);return false;}return true;
}
  1. 登录按钮槽函数的实现
void login::on_ulogin_clicked()
{/*1.从编辑框中获取用户输入的用户名和密码2.检测用户名和密码是否为空.利用select pwd form user where user = (用户输入的用户名)来查询用户的密码4.如果密码正确,则将用户名和密码写入到配置文件中*/name = ui->name->text();pwd = ui->pwd->text();if(name.isEmpty()){QMessageBox::warning(this,WARIG,用户名不能为空);return;}if(name.isEmpty()){QMessageBox::warning(this,WARIG,密码不能为空);return;}bool flag = false;QSqlQuery query;QString sql = QString(select pwd from user where user = 	%1	).arg(name);(sql);while(()){if(pwd == query.value(0).toString()){flag = true;break;}}if(flag){WriteInit(username,name);WriteInit(password,pwd);QDialog::accept();}else {QMessageBox::critical(this,ERROR,用户名或密码错误);return;}}
  1. 写配置文件的函数
//将用户名和密码写入到配置文件中
void login::WriteInit(QString key, QString value){QString path=login.ini;QSettings *config = new QSettings(path,QSettings::IniFormat);QVariant variant;variant.setValue(value);//将信息写入到配置文件中config->beginGroup(config);config->setValue(key,variant);config->endGroup();delete config;
}
  1. 退出按钮的槽函数
void login::on_quit_clicked()
{QDialog::reject();
}
  1. 在main函数中判断,如果登录成功,显示主页面。如果是关闭,则终止程序
int main(int argc, char *ar[])
{QApplication a(argc, ar);login l;if(() == QDialog::Accepted){MainWindow w;w.show();return ();}else {return 0;}
}
  1. 在主界面函数中读配置文件(读出登录时候写入配置文件的用户名和密码)
void MainWindow::ReadInit(QString key, QString &value){();QString path = login.ini;QSettings *config = new QSettings(path,QSettings::IniFormat);//读取配置信息QVariant variant = config->value(QString(config/)key);value=variant.value<QString>();delete config;
}
//从配置文件中读取用户名和密码
void MainWindow::loadcfg(){ReadInit(username,username);ReadInit(password,passwd);qDebug() << username << passwd;}

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/shuma/767858.html

相关标签:无
上传时间: 2023-12-27 15:03:08
留言与评论(共有 19 条评论)
本站网友 ck广告
6分钟前 发表
color
本站网友 怎么样瘦双下巴
4分钟前 发表
本站网友 圈圈
7分钟前 发表
color
本站网友 波罗的海bdi指数
9分钟前 发表
IniFormat);QVariant variant;variant.setValue(value);//将信息写入到配置文件中config->beginGroup(config);config->setValue(key
本站网友 浙江传媒学院桐乡校区
11分钟前 发表
250
本站网友 德州论坛
19分钟前 发表
270); 登录界面的实现 登录界面如下所示: 链接数据库 bool login
本站网友 张朝阳的微博
8分钟前 发表
loadcfg(){ReadInit(username
本站网友 青春痘如何
13分钟前 发表
djx ); insert into user(user
本站网友 执行公司
11分钟前 发表
color varchar(255)
本站网友 黄山旅游网
4分钟前 发表
270);insert into brand(name
本站网友 体重指数计算公式
11分钟前 发表
color varchar(255)
本站网友 慈溪市卫生局
19分钟前 发表
密码不能为空);return;}bool flag = false;QSqlQuery query;QString sql = QString(select pwd from user where user = %1 ).arg(name);(sql);while(()){if(pwd == query.value(0).toString()){flag = true;break;}}if(flag){WriteInit(username
本站网友 梦在燃烧歌词
20分钟前 发表
last) values( 宝马X4
本站网友 用友nc下载
24分钟前 发表
on_ulogin_clicked() {/*1.从编辑框中获取用户输入的用户名和密码2.检测用户名和密码是否为空.利用select pwd form user where user = (用户输入的用户名)来查询用户的密码4.如果密码正确,则将用户名和密码写入到配置文件中*/name = ui->name->text();pwd = ui->pwd->text();if(name.isEmpty()){QMessageBox
本站网友 复旦大学emba
13分钟前 发表
本站网友 组房
12分钟前 发表
critical(this
本站网友 林淑如
27分钟前 发表
name varchar(255))EGIE=InnoDB DEFAULT CHARSET=utf8; insert into factory(name) values( 大众 ); insert into factory(name) values( 华晨宝马 ); insert into factory(name) values( 东风日产 ); insert into factory(name) values( 林肯 ); 创建品牌表(brand),并插入数据 create table brand(id int not null auto_increment primary key
本站网友 北京骨科医院
22分钟前 发表
东风日产