当前位置: 首页 > news >正文

作业8/16

2> 在登录界面的登录取消按钮进行一下设置:

使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数

将登录按钮使用qt5版本的连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账号是否为"admin",密码是否为"123456",如果账号密码匹配成功,则输出“登录成功”,并关闭该界面,如果匹配失败,则输出登录失败,并将密码框中的内容清空

#include "mainwindow.h"
#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent)
//    , ui(new Ui::MainWindow)
//    , usernameInput(new QLineEdit(this))
//    , passwordInput(new QLineEdit(this))
//    , loginButton(new QPushButton("登录", this))
//    , cancelButton(new QPushButton("取消", this)), ui(new Ui::MainWindow), usernameInput(nullptr), passwordInput(nullptr)
//    , loginButton(nullptr)
//    , cancelButton(nullptr)
{ui->setupUi(this);// 设置窗口标题this->setWindowTitle("系统登录");// 设置窗口大小和固定大小this->resize(1897, 1067);this->setFixedSize(1897, 1067);// 设置窗口背景色this->setStyleSheet("background-color:white");// 创建动画标签QLabel *lab1 = new QLabel(this); // 创建QLabel实例,父类为thislab1->resize(1897, 1067); // 设置QLabel大小QMovie *movie1 = new QMovie("E:\\360MoveData\\Users\\ZYX\\Pictures\\Saved Pictures\\01.jpg"); // 创建QMovie实例,载入GIF动画lab1->setMovie(movie1); // 设置QLabel的动画movie1->start(); // 开始播放动画// 创建账号标签控件QLabel *lab2 = new QLabel(this); // 创建QLabel实例lab2->resize(24, 39); // 设置大小lab2->move(1232, 500); // 设置位置lab2->setPixmap(QPixmap("E:\\360MoveData\\Users\\ZYX\\Pictures\\Saved Pictures\\2.png")); // 设置标签的图片lab2->setScaledContents(true); // 设置图片自动缩放以适应QLabel的大小// 创建密码标签控件QLabel *lab3 = new QLabel(this); // 创建QLabel实例lab3->resize(24, 39); // 设置大小lab3->move(1232, 550); // 设置位置lab3->setPixmap(QPixmap("E:\\360MoveData\\Users\\ZYX\\Pictures\\Saved Pictures\\3.png")); // 设置标签的图片lab3->setScaledContents(true); // 设置图片自动缩放以适应QLabel的大小//       // 创建登录按钮
//       QPushButton *btn1 = new QPushButton("登录", this); // 创建QPushButton实例
//       btn1->resize(109, 45); // 设置按钮大小
//       btn1->move(1467, 660); // 设置位置
//       btn1->setStyleSheet("background-color:white"); // 设置背景色// 创建登录按钮QPushButton *loginButton = new QPushButton("登录", this); // 创建QPushButton实例loginButton->resize(109, 45); // 设置按钮大小loginButton->move(1467, 660); // 设置位置loginButton->setStyleSheet("background-color:white"); // 设置背景色// 创建取消按钮,放在登录按钮正下方QPushButton *cancelButton = new QPushButton("取消", this);cancelButton->move(1467, 710); // 假设这是你的取消按钮的位置cancelButton->resize(109, 45);// 创建注册按钮QPushButton *btn2 = new QPushButton("注册", this); // 创建QPushButton实例btn2->resize(109, 45); // 设置按钮大小btn2->move(1232, 660); // 设置位置btn2->setEnabled(true); // 设置按钮可用//       // 创建账号输入框
//       QLineEdit *edit1 = new QLineEdit(this); // 创建QLineEdit实例
//       edit1->resize(321, 40); // 设置大小
//       edit1->move(1256, 500); // 设置位置
//       edit1->setPlaceholderText("账号/邮箱"); // 设置提示文字
//       edit1->setEchoMode(QLineEdit::Normal); // 设置显示模式,这里更改为Normal显示正常文本,原代码设置为Password显示为密码输入模式//       // 创建密码输入框
//       QLineEdit *edit2 = new QLineEdit(this); // 创建QLineEdit实例
//       edit2->resize(321, 40); // 设置大小
//       edit2->move(1256, 550); // 设置位置
//       edit2->setPlaceholderText("密码"); // 设置提示文字
//       edit2->setEchoMode(QLineEdit::Password); // 设置显示模式为密码输入模式// 创建账号输入框usernameInput = new QLineEdit(this); // 创建QLineEdit实例usernameInput->resize(321, 40); // 设置大小usernameInput->move(1256, 500); // 设置位置usernameInput->setPlaceholderText("账号/邮箱"); // 设置提示文字usernameInput->setEchoMode(QLineEdit::Normal); // 设置显示模式// 创建密码输入框passwordInput = new QLineEdit(this); // 创建QLineEdit实例passwordInput->resize(321, 40); // 设置大小passwordInput->move(1256, 550); // 设置位置passwordInput->setPlaceholderText("密码"); // 设置提示文字passwordInput->setEchoMode(QLineEdit::Password); // 设置显示模式// 使用Qt5版本信号连接登录按钮connect(loginButton, &QPushButton::clicked, this, &MainWindow::onLoginClicked);// 使用Qt4版本信号连接取消按钮connect(cancelButton, SIGNAL(clicked()), this, SLOT(onCancelClicked()));
}MainWindow::~MainWindow()
{delete ui;delete usernameInput;delete passwordInput;
//    delete loginButton;
//    delete cancelButton;
}void MainWindow::onLoginClicked()
{QString username = usernameInput->text();QString password = passwordInput->text();if (username == "admin" && password == "123456"){// 在应用程序输出窗口显示信息qDebug() << "用户已登录";// 关闭窗口this->close();}else{// 显示登录失败警告QMessageBox::warning(this, tr("Login"), tr("登录失败"));passwordInput->clear();}
}void MainWindow::onCancelClicked()
{this->close();
}


http://www.mrgr.cn/news/3933.html

相关文章:

  • JavaEE 的相关知识点(一)
  • API网关之Apache ShenYu
  • 每日掌握一个科研插图·2D密度图|24-08-21
  • 探索Python中的列表差集:实现与应用
  • 企业级web应用服务器tomcat
  • 趣味娱乐小程序源码多流量主 趣味制作/藏头诗/隐藏图
  • mysql在docker中如何设置正确的时区
  • 队列(笔记)
  • PHP—MySQL(PHP连接数据库)
  • pytorch学习
  • Nginx代理静态资源(gis瓦片图片)实现非固定ip的url适配网络环境映射ip下的资源请求解决方案
  • 【机器学习】神经网络简介以及如何用Tensorflow构建一个简单的神经网络
  • Docker 打包容器
  • 深入理解Python常见数据类型处理
  • 农村建房是否适用《建筑法》《建工解释一》
  • 【大模型从入门到精通33】开源库框架LangChain RAG 系统中的问答技术3
  • LED电子看板优化生产线的管理
  • 算法阶段总结1
  • git自定义命令使用
  • input框的placeholder字体颜色如何修改?