QT实现用户登录注册功能

这篇文章主要为大家详细介绍了QT实现用户登录注册功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了QT实现用户登录注册的具体代码,供大家参考,具体内容如下

1、login.h

#ifndef LOGIN_H #define LOGIN_H #include  namespace Ui { class Login; } class Login : public QWidget {     Q_OBJECT public:     explicit Login(QWidget *parent = 0);     ~Login(); private slots:     void on_btn_login_clicked();     void on_btn_register_clicked(); private:     Ui::Login *ui; }; #endif // WIDGET_H

2、login.cpp

#include "login.h" #include "ui_login.h" #include "register.h" #include "mainwindow.h" #include  #include  #include  #include  Login::Login(QWidget *parent) :     QWidget(parent),     ui(new Ui::Login) {     ui->setupUi(this);     ui->ledit_password->setEchoMode(QLineEdit::Password); } Login::~Login() {     delete ui; } void Login::on_btn_login_clicked() {     QString username = ui->ledit_username->text();     QString password = ui->ledit_password->text();     if(username == "" ||password == ""){         QMessageBox::information(this,"警告","输入不能为空",QMessageBox::Ok);     }else{         QSqlQuery query;         query.prepare("select username,password from admin where username=:username and password = :password ");         query.bindValue(":username", username);         query.bindValue(":password", password);         query.exec();         if(!query.next())         {             //结果集为空             //执行某操作             QMessageBox::information(this,"警告","用户名或密码错误!",QMessageBox::Ok);         }         else         {             QMessageBox::information(this,"提醒","登录成功!",QMessageBox::Ok);             MainWindow *m = new MainWindow;             m->show();             this->close();         }     } } void Login::on_btn_register_clicked() {     Register *r = new Register;     r->show(); }

3、register.h

#ifndef REGISTER_H #define REGISTER_H #include  namespace Ui { class Register; } class Register : public QWidget {     Q_OBJECT public:     explicit Register(QWidget *parent = 0);     ~Register(); private slots:     void on_btn_logon_clicked(); private:     Ui::Register *ui; }; #endif // REGISTER_H

4、register.cpp

#include "register.h" #include "ui_register.h" #include  #include  #include  #include  Register::Register(QWidget *parent) :     QWidget(parent),     ui(new Ui::Register) {     ui->setupUi(this); } Register::~Register() {     delete ui; } void Register::on_btn_logon_clicked() {     QString username = ui->ledit_username->text();     QString password = ui->ledit_pwd->text();     QString name = ui->ledit_name->text();     int age = ui->ledit_age->text().toInt();     QButtonGroup *bg=new QButtonGroup(this);     bg->addButton(ui->rbtn_male,0);//一个值为0     bg->addButton(ui->rbtn_female,1);//一个值为1     int sel=bg->checkedId();//取到你所选的radioButton的值     QString gender;     switch(sel)     {     case 0:       gender="男";       break;     case 1:       gender="女";       break;     default:       gender="";     break;     }     QSqlQuery query;     query.prepare("select username from patient where username=:username");     query.bindValue(":username", username);     query.exec();     if(query.next())     {         QMessageBox::information(this,"警告","用户名已存在!",QMessageBox::Ok);     }     else     {         query.prepare("insert into patient(username,password,patientName,age,gender)"                       "values(:username,:password,:patientName,:age,:gender)");         query.bindValue(":username", username);         query.bindValue(":password",password);         query.bindValue(":patientName", name);         query.bindValue(":age", age);         query.bindValue(":gender", gender);         query.exec();         QMessageBox::information(this,"警告","注册成功!",QMessageBox::Ok);     } }

5、数据库连接代码

#ifndef CONNECTION #define CONNECTION #include  #include  #include  #include  #include  #include  static bool createConnection() {     //测试用例:连接mysql数据库,做一个基本的sql语句操作     //1、对qt下数据库的驱动进行遍历查看     QStringList drivers = QSqlDatabase::drivers();     foreach (QString driver, drivers) {         qDebug()<

运行结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持0133技术站。

以上就是QT实现用户登录注册功能的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » C语言