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

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

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

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

源文件

#include "widget.h" //包含自定义的头文件
#include "ui_widget.h"  //包含ui界面的头文件Widget::Widget(QWidget *parent) //构造函数的实现: QWidget(parent)   //调用父类的构造函数, ui(new Ui::Widget)    //给指针成员初始化空间
{ui->setupUi(this);  //调用ui界面的设置界面函数//设置固定尺寸//   this->setFixedSize(300,400);//更改窗口标题this->setWindowTitle("QQ");//更改窗口图标E:\GXY\day1\02WORK\iconthis->setWindowIcon(QIcon("E:\\GXY\\day1\\02WORK\\icon\\QQ.png"));ui->btn1->setIcon(QIcon("E:\\GXY\\day1\\02WORK\\icon\\denglu.png"));ui->btn2->setIcon(QIcon("E:\\GXY\\day1\\02WORK\\icon\\denglu.png"));ui->btn3->setIcon(QIcon("E:\\GXY\\day1\\02WORK\\icon\\quxiao.png"));ui->edt1->setPlaceholderText("账号");ui->edt2->setEchoMode(QLineEdit::Password);ui->label1->setScaledContents(true);ui->label2->setScaledContents(true);ui->label1->setPixmap(QPixmap("E:\\GXY\\day1\\02WORK\\icon\\zhanghao.png"));ui->label2->setPixmap(QPixmap("E:\\GXY\\day1\\02WORK\\icon\\denglumima.png"));ui->label->setScaledContents(true);ui->label->setPixmap(QPixmap("E:\\GXY\\day1\\02WORK\\icon\\logo.png"));connect(ui->btn2,SIGNAL(clicked()),this,SLOT(my_slot()));}Widget::~Widget()   //定义析构函数
{delete ui;  //释放类中的指针成员空间
}void Widget::my_slot()
{QString count = ui->edt1->text();QString passwd = ui->edt2->text();if(count == "admin" && passwd == "123456"){qDebug() << "login success!";close();}else{qDebug() << "账号和密码不匹配,请重新输入!";ui->edt2->clear();ui->edt1->clear();}}void Widget::on_btn3_clicked()
{close();
}

头文件

#ifndef WIDGET_H
#define WIDGET_H    //避免重复包含文件#include <QWidget>      //父类的头文件
#include <QDebug>
#include <QPushButton>
#include <QLineEdit>
#include <QLabel>QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }  //命名空间的声明
QT_END_NAMESPACEclass Widget : public QWidget   //自定义的类,用来继承QMainWindow类
{Q_OBJECT                    //处理信号与槽的元对象signals:void my_signal();private slots:void my_slot();void on_btn3_clicked();public:Widget(QWidget *parent = nullptr);  //声明构造函数~Widget();  //声明析构函数private:Ui::Widget *ui; //指向ui界面的指针
};#endif // WIDGET_H

测试文件

#include "widget.h" //引入自定义的头文件#include <QApplication> //引入应用程序的头文件int main(int argc, char *argv[])    //主函数
{QApplication a(argc, argv); //实例化应用程序的对象Widget w;   //用自定义对象在栈区实例化一个对象w.show();   //调用show将界面显示出来return a.exec();    //阻塞等待界面处理
}

ui界面

20230516(2)相关推荐

  1. OpenAPI使用(swagger3),Kotlin使用swagger3,Java使用swagger3,gradle、Maven使用swagger3

    OpenAPI使用(swagger3) demo见Gitte 一.背景及名词解释 OpenAPI是规范的正式名称.规范的开发工作于2015年启动,当时SmartBear(负责Swagger工具开发的公 ...

  2. 2022-2028年中国第五代移动通信技术(5G)市场研究及前瞻分析报告

    [报告类型]产业研究 [报告价格]4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了中国第五代移动通信技术(5G)行业市场行业相 ...

  3. 2021-2027全球与中国经颅磁刺激仪(TMS)市场现状及未来发展趋势

    [报告类型]产业研究 [报告价格]¥4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了全球与中国经颅磁刺激仪(TMS)行业市场行 ...

  4. Go 学习笔记(84)— Go 项目目录结构

    1. 目录规范 一个好的目录结构至少要满足以下几个要求. 命名清晰:目录命名要清晰.简洁,不要太长,也不要太短,目录名要能清晰地表达出该目录实现的功能,并且目录名最好用单数.一方面是因为单数足以说明这 ...

  5. Redis 笔记(16)— info 指令和命令行工具(查看内存、状态、客户端连接数、监控服务器、扫描大key、采样服务器、执行批量命令等)

    Info 命令返回关于 Redis 服务器的各种信息和统计数值.通过给定可选的参数 section ,可以让命令只返回某一部分的信息. 1. 显示模块 server : 一般 Redis 服务器信息, ...

  6. Redis 笔记(12)— 单线程架构(非阻塞 IO、多路复用)和多个异步线程

    Redis 使用了单线程架构.非阻塞 I/O .多路复用模型来实现高性能的内存数据库服务.Redis 是单线程的.那么为什么说是单线程呢? Redis 在 Reactor 模型内开发了事件处理器,这个 ...

  7. Redis 笔记(10)— 发布订阅模式(发布订阅单个信道、订阅信道后的返回值分类、发布订阅多个信道)

    1. 发布-订阅概念 发布-订阅 模式包含两种角色,分别为发布者和订阅者. 订阅者可以订阅一个或者若干个频道(channel): 而发布者可以向指定的频道发送消息,所有订阅此频道的订阅者都可以收到此消 ...

  8. Redis 笔记(08)— 事务(一次执行多条命令、命令 watch/multi/exec/discard、错误处理)

    1. 事务概念 Redis 中的事务 (transaction)是一组命令的集合.事务同命令一样是 Redis 的最小执行单位,一个事务中的命令要么都执行,要么都不执行.事务的原理是先将属于一个事务的 ...

  9. Redis 笔记(07)— sorted set 类型(添加、删除有序集合元素、获取分数范围内成员、按score排序、返回集合元素个数)

    zset 可能是 Redis 提供的最为特色的数据结构,一方面它是一个 set,保证了内部 value 的唯一性,另一方面它可以给每个 value 赋予一个 score,代表这个 value 的排序权 ...

最新文章

  1. windows已添加Pin码仍提示添加的解决方法
  2. Zabbix5.0监控系统安装详解
  3. 神奇的nginx之https支持
  4. android 时间管理app,时间管理app
  5. 关于Win7 内存变小处理方法
  6. OpenCover+ReportGenerator实现.net代码覆盖率测试
  7. 清华大学计算机学院主页,计算机图形学基础课程主页 | 清华大学计算机系
  8. 算子,滤波器,卷积模板,卷积核的概念比较
  9. 航空信息指挥调度系统_应急指挥中心指挥调度系统解决方案(一)
  10. 插入排序算法--Java实现
  11. 快手视频如何一键批量下载
  12. 计算机键盘上的tab键是什么键,键盘Tab键有什么作用?
  13. 正态分布的峰度和偏度分别为_关于偏度与峰度的一些探索
  14. mysql 取top 10_我的mysql如何分组取top10?
  15. 洛谷-P1125-笨小猴
  16. 生存分析彭非_21世纪统计学系列教材 生存分析_11396967.pdf
  17. MacBook Pro USB口可以识别U盘却不能识别手机?
  18. 计算机的基本组成及其工作原理
  19. Android实现模拟时钟(简单+漂亮)--时针、分针、秒针
  20. java实现多功能科学计算器(包括进制转换,三角函数,四则运算等)

热门文章

  1. (转载)MySQL数据库的主键和外键详解
  2. 1、英飞凌-TC2XX/TC3XX学习笔记:AURIX Development Studio 安装
  3. 网络安全(三)浏览器安全
  4. AutoRunner函数调用
  5. Android 垃圾分类APP(五)垃圾分类新闻展示
  6. 中国省市区县行政编码处理(转存在到数据库)
  7. CGAL 点云数据读取与保存
  8. python字典程序题_Python学习之字典实现成绩管理程序
  9. P1015 [NOIP1999 普及组] 回文数 C语言实现
  10. 如何使用sed进行字符串替换?