QT day4

打印 上一主题 下一主题

主题 1781|帖子 1781|积分 5343



success.h
  1. #ifndef SUCCESS_H
  2. #define SUCCESS_H
  3. #include <QWidget>
  4. namespace Ui {
  5. class success;
  6. }
  7. class success : public QWidget
  8. {
  9.     Q_OBJECT
  10. public:
  11.     explicit success(QWidget *parent = nullptr);
  12.     ~success();
  13. public slots:
  14.     void my_login_slot();
  15. private slots:
  16.     void on_pushButton_clicked();
  17. private:
  18.     Ui::success *ui;
  19. };
  20. #endif // SUCCESS_H
复制代码
widget.h
  1. #ifndef WIDGET_H
  2. #define WIDGET_H
  3. #include <QWidget>
  4. #include<QMessageBox>
  5. #include<QLabel>
  6. QT_BEGIN_NAMESPACE
  7. namespace Ui { class Widget; }
  8. QT_END_NAMESPACE
  9. class Widget : public QWidget
  10. {
  11.     Q_OBJECT
  12. public:
  13.     Widget(QWidget *parent = nullptr);
  14.     ~Widget();
  15. public slots:
  16.     void my_cancel_slot();
  17. signals:
  18.     void my_login_signal();
  19.     void my_cl_signal();
  20. private slots:
  21.     void on_pushButton_clicked();
  22.     void on_pushButton_2_clicked();
  23. private:
  24.     Ui::Widget *ui;
  25. };
  26. #endif // WIDGET_H
复制代码
mani.cpp
  1. #include "widget.h"
  2. #include "success.h"
  3. #include <QApplication>
  4. int main(int argc, char *argv[])
  5. {
  6.     QApplication a(argc, argv);
  7.     Widget w;
  8.     w.show();
  9.     success login;
  10.     QObject::connect(&w,&Widget::my_login_signal,&login,&success::my_login_slot);
  11.     return a.exec();
  12. }
复制代码
success.cpp
  1. #include "success.h"
  2. #include "ui_success.h"
  3. success::success(QWidget *parent) :
  4.     QWidget(parent),
  5.     ui(new Ui::success)
  6. {
  7.     ui->setupUi(this);
  8.     this->setWindowFlag(Qt::FramelessWindowHint);
  9.     this->setAttribute(Qt::WA_TranslucentBackground);
  10. }
  11. success::~success()
  12. {
  13.     delete ui;
  14. }
  15. void success::my_login_slot()
  16. {
  17.     this->show();
  18. }
  19. void success::on_pushButton_clicked()
  20. {
  21.     this->close();
  22. }
复制代码
widget.cpp
  1. #include "widget.h"
  2. #include "ui_widget.h"
  3. Widget::Widget(QWidget *parent)
  4.     : QWidget(parent)
  5.     , ui(new Ui::Widget)
  6. {
  7.     ui->setupUi(this);
  8.     this->setWindowFlag(Qt::FramelessWindowHint);
  9.     this->setAttribute(Qt::WA_TranslucentBackground);
  10.     ui->lineEdit_2->setEchoMode(QLineEdit::Password);
  11.     connect(ui->btn2,SIGNAL(clicked()),this,SLOT(my_cancel_slot()));
  12. }
  13. Widget::~Widget()
  14. {
  15.     delete ui;
  16. }
  17. void Widget::my_cancel_slot()
  18. {
  19.     this->close();
  20. }
  21. void Widget::on_pushButton_clicked()
  22. {
  23.     if(ui->lineEdit->text()=="admin"&&ui->lineEdit_2->text()=="123456")
  24.     {
  25.        int ret=QMessageBox::information(this,
  26.                                         "登陆",
  27.                                         "登陆成功",
  28.                                         QMessageBox::Ok,
  29.                                         QMessageBox::Ok);
  30.        if(ret==QMessageBox::Ok)
  31.        {
  32.             emit my_login_signal();
  33.             this->close();
  34.        }
  35.     }else
  36.     {
  37.         QMessageBox msg(QMessageBox::Critical,
  38.                         "错误",
  39.                         "账号和密码不匹配,是否重新登陆",
  40.                         QMessageBox::Yes|QMessageBox::No,
  41.                         this);
  42.         int ret=msg.exec();
  43.         if(ret==QMessageBox::Yes)
  44.         {
  45.              ui->lineEdit->setText("");
  46.              ui->lineEdit_2->setText("");
  47.         }else if (ret==QMessageBox::No)
  48.         {
  49.               this->close();
  50.         }
  51.     }
  52. }
  53. void Widget::on_pushButton_2_clicked()
  54. {
  55.     QMessageBox msg(QMessageBox::Question,
  56.                                   "退出",
  57.                                   "您是否要退出登陆",
  58.                                    QMessageBox::Yes|QMessageBox::No,
  59.                                    this);
  60.     int ret=msg.exec();
  61.     if(ret==QMessageBox::Yes)
  62.     {
  63.         this->close();
  64.     }
  65. //    else if (ret==QMessageBox::No)
  66. //    {
  67. //    }
  68. }
复制代码
输入账号密码正确的情况:


 


输入账号密码错误的情况:


点击Cancel按钮:


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

数据人与超自然意识

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表