QTday2

2024-01-09 20:51:53

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

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

头文件

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QDebug>
#include <QString>

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private:
    Ui::MainWindow *ui;

public slots:
    void cancel_slot();
    void login_slot();
};
#endif // MAINWINDOW_H

构造函数

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    ui->logolabel->setPixmap(QPixmap(":/pictrue/logo.png"));
    ui->logolabel->setScaledContents(true);

    ui->usernamelabel->setPixmap(QPixmap(":/pictrue/userName.jpg"));
    ui->usernamelabel->setScaledContents(true);

    ui->pasworldlabel->setPixmap(QPixmap(":/pictrue/passwd.jpg"));
    ui->pasworldlabel->setScaledContents(true);

    ui->paswordedit->setPlaceholderText("密码");
    ui->usernameedit->setPlaceholderText("账号");

    ui->paswordedit->setEchoMode(QLineEdit::Password);

    //取消按键的信号和槽的连接qt4
    connect(ui->cancelbtn,SIGNAL(clicked()),this,SLOT(cancel_slot()));

    //登录按键的信号和槽的连接qt5
    connect(ui->loginbtn,&QPushButton::clicked,this,&MainWindow::login_slot);
}

MainWindow::~MainWindow()
{
    delete ui;
}

//取消按钮关闭窗口
void MainWindow::cancel_slot()
{
    this->close();
}

void MainWindow::login_slot()
{
    //获取行编辑器的文本进行比较
    if(ui->usernameedit->text()=="admin"&&ui->paswordedit->text()=="123456")
    {
        qDebug() << "登录成功";
        this->close();
    }
    else
    {
        qDebug() << "登录失败";
        ui->paswordedit->setText("");
    }
}

ui界面

运行后

思维导图

文章来源:https://blog.csdn.net/zdy_cl/article/details/135488117
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。