2023年5月16日 星期二

11 篇文章 0 订阅
10 篇文章 0 订阅

将登录框的两个按钮进行实现,登录按钮需要手动连接自定义的槽函数,取消按钮右键转到槽

对于登录按钮对应的槽函数中实现:判断输入的账号是否等于"admin",密码是否为“123456”,如果匹配成功,则输出登录成功后关闭界面

如果匹配失败,输出账号和密码不匹配,请重新输入,并将密码框内容清空

对于取消按钮,在对应的槽函数中,关闭整个界面即可

运行结果

在这里插入图片描述
在这里插入图片描述

代码

头文件

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QDebug>

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT


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

private slots:
    void on_quxiaoButton_clicked();
    void my_slot();

private:
    Ui::Widget *ui;
};
#endif // WIDGET_H

主函数

#include "widget.h"

#include <QApplication>

int main(int argc, char *argv[])
{
   QApplication a(argc, argv);
   Widget w;
   w.show();
   return a.exec();
}

功能函数

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
   : QWidget(parent)
   , ui(new Ui::Widget)
{
   //窗口
   ui->setupUi(this);
   this->setWindowIcon(QIcon(":/icon/QQ.png"));
   this->setWindowTitle("QQ");

   //设置文本的回显模式
   ui->pwdEdit->setEchoMode(QLineEdit::Password);
   //设置行编辑器占位符
   ui->zhanghaoEdit->setPlaceholderText("QQ号码/手机/邮箱");

   //图标化标签
   ui->label->setScaledContents(true);
   ui->label->setPixmap(QPixmap(":/icon/QQ.png"));
   ui->label_2->setScaledContents(true);
   ui->label_2->setPixmap(QPixmap(":/icon/denglu.png"));
   ui->label_3->setScaledContents(true);
   ui->label_3->setPixmap(QPixmap(":/icon/denglumima.png"));

   //将登录的clicked信号手动与自定义的信号进行连接
   connect(ui->dengluButton,SIGNAL(clicked()),this,SLOT(my_slot()));
}

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

//自定义实现槽函数
void Widget::my_slot()
{
   QString zh = ui->zhanghaoEdit->text();
   QString mm = ui->pwdEdit->text();
   if(zh == "admin" && mm == "123456"){
       qDebug()<<"登录成功";
       close();
   }else{
       qDebug()<<"输入账号与密码不匹配,请重新输入";
       ui->zhanghaoEdit->clear();
       ui->pwdEdit->clear();
   }
}


void Widget::on_quxiaoButton_clicked()
{
   close();
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值