当前位置:   article > 正文

C++day3

C++day3

第一个界面的头文件

  1. #ifndef WIDGET_H
  2. #define WIDGET_H
  3. #include <QWidget>
  4. #include <QMessageBox>
  5. #include <QDebug>
  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. signals:
  16. void jump();
  17. private slots:
  18. void on_pushButton_clicked();
  19. void on_pushButton_2_clicked();
  20. private:
  21. Ui::Widget *ui;
  22. };
  23. #endif // WIDGET_H

第一个界面的源文件

  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. }
  9. Widget::~Widget()
  10. {
  11. delete ui;
  12. }
  13. //登录按钮所对应的槽函数
  14. void Widget::on_pushButton_clicked()
  15. {
  16. if(ui->Username->text() == "1441147475" && ui->Passwd->text() == "20010107pc")
  17. {
  18. QMessageBox msg(QMessageBox::Information,
  19. "提示",
  20. "登录成功",
  21. QMessageBox::Ok
  22. );
  23. //调用exec()弹出对话框
  24. int ret = msg.exec();
  25. //根据exec()函数的返回值执行功能
  26. if(ret == QMessageBox::Ok)
  27. {
  28. this->close();
  29. emit jump();
  30. }
  31. }
  32. else
  33. {
  34. QMessageBox msg(QMessageBox::Critical,
  35. "错误",
  36. "账号和密码不匹配,是否重新登录?",
  37. QMessageBox::Yes | QMessageBox::No
  38. );
  39. //调用exec()弹出对话框
  40. int ret = msg.exec();
  41. if(ret == QMessageBox::Yes)
  42. {
  43. ui->Passwd->clear();
  44. }
  45. else
  46. {
  47. this->close();
  48. }
  49. }
  50. }
  51. void Widget::on_pushButton_2_clicked()
  52. {
  53. QMessageBox msg(QMessageBox::Question,
  54. "提示信息",
  55. "您是否确定要退出登录?",
  56. QMessageBox::Yes | QMessageBox::No
  57. );
  58. int ret = msg.exec();
  59. if(ret == QMessageBox::Yes)
  60. {
  61. this->close();
  62. }
  63. else
  64. {
  65. msg.close();
  66. }
  67. }

第二个界面的头文件:

  1. #ifndef SECOND_H
  2. #define SECOND_H
  3. #include <QWidget>
  4. namespace Ui {
  5. class second;
  6. }
  7. class second : public QWidget
  8. {
  9. Q_OBJECT
  10. public:
  11. explicit second(QWidget *parent = nullptr);
  12. ~second();
  13. public slots:
  14. void jump_slot();
  15. private:
  16. Ui::second *ui;
  17. };
  18. #endif // SECOND_H

第二个界面的源文件:

  1. #include "second.h"
  2. #include "ui_second.h"
  3. second::second(QWidget *parent) :
  4. QWidget(parent),
  5. ui(new Ui::second)
  6. {
  7. ui->setupUi(this);
  8. }
  9. second::~second()
  10. {
  11. delete ui;
  12. }
  13. //ok信号对应槽函数的实现
  14. void second::jump_slot()
  15. {
  16. this->show();
  17. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/397864
推荐阅读
相关标签
  

闽ICP备14008679号