QT day2 作业

news2025/1/18 11:49:27


头文件

#ifndef MYWIDGET_H
#define MYWIDGET_H
 
 
#include <QWidget>
#include <QDebug>
#include<QIcon>
#include<QLabel>
#include<QMovie>
#include<QLineEdit>
#include<QPushButton>
QT_BEGIN_NAMESPACE
namespace Ui { class MyWidget; }
QT_END_NAMESPACE
 
class MyWidget : public QWidget
{
    Q_OBJECT
 
public:
    MyWidget(QWidget *parent = nullptr);
    ~MyWidget();
public slots:
    void edit_Slots();
    void btn_Slots();
 
 
private:
    Ui::MyWidget *ui;
    QLabel *lab1;
    QLabel *lab2;
    QLabel *lab3;
    QLineEdit *edit1;
    QLineEdit *edit2;
    QPushButton *btn;
};
#endif // MYWIDGET_H

源文件

#include "mywidget.h"
#include "ui_mywidget.h"
 
MyWidget::MyWidget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::MyWidget)
{
    ui->setupUi(this);
    //设置窗口大小
    this->resize(540,415);
    //固定窗口大小
    this->setFixedSize(540,415);
    //设置标题
    this->setWindowTitle("QQ");
    //设置图标
    this->setWindowIcon(QIcon("D:\\QT\\pictrue\\pictrue\\qq.png"));
    //图标颜色
    this->setStyleSheet("background-color:white");
    
    //设置标签    
    lab1 = new QLabel(this);
    //设置标签大小
    lab1->resize(540, 160);
    //接收动图
    QMovie *mv = new QMovie("D:QT\\pictrue\\pictrue\\qq2.gif");
    //将动图放入标签
    lab1->setMovie(mv);
    //让动图动起来
    mv->start();
    //自动适应大小
    lab1->setScaledContents(true);
 
    //设置标签2
    lab2 = new QLabel(this);
    //标签大小
    lab2->resize(30,30);
    //标签移动位置
    lab2->move(120,210);
    //将图片放入标签
    lab2->setPixmap(QPixmap("D:QT\\pictrue\\pictrue\\wodepeizhenshi.png"));
    //自动适应大小
    lab2->setScaledContents(true);
 
    //设置标签
    lab3 = new QLabel(this);
    lab3->resize(30,30);
    lab3->move(120, 260);
    lab3->setPixmap(QPixmap("D:QT\\pictrue\\pictrue\\passwd.jpg"));
    lab3->setScaledContents(true);
 
    //设置行编辑器
    edit1 = new QLineEdit(this);
    //行编辑器大小
    edit1->resize(275,30);
    //移动行编辑器位置
    edit1->move(155,210);
    //行编辑器占位
    edit1->setPlaceholderText("QQ号/手机号/邮箱");
 
 
    edit2 = new QLineEdit(this);
    edit2->resize(275,30);
    edit2->move(155,260);
    edit2->setPlaceholderText("密码");
    edit2->setEchoMode(QLineEdit::Password);
 
    //按钮组件
    btn = new QPushButton("登录",this);
    //按钮组件大小
    btn->resize(300,45);
    //按钮组件移动位置
    btn->move(120,345);
    //按钮背景色,边框倒角,字体颜色
    btn->setStyleSheet("background-color:red;border-radius:5px;color:white");
    btn->setEnabled(false);
    connect(this->edit1,&QLineEdit::textChanged,this,&MyWidget::edit_Slots);
    connect(this->edit2,&QLineEdit::textChanged,this,&MyWidget::edit_Slots);
    connect(this->btn,&QPushButton::clicked,this,&MyWidget::btn_Slots);
 
}
 
void MyWidget::btn_Slots()
{
    if(this->edit1->text()=="admin" && this->edit2->text()=="123456")
    {
        qDebug() << "登录成功";
        this->close();
    }
    else
    {
        qDebug() << "登录失败,账号或密码错误";
        this->edit1->clear();
        this->edit2->clear();
    }
}
void MyWidget::edit_Slots()
{
    QString s1=this->edit1->text();
    QString s2=this->edit2->text();
    if(s1.length()>=5 && s2.length()>=6 )
    {
        this->btn->setStyleSheet("background-color:rgb(125,18,179)");
        this->btn->setEnabled(true);
 
    }
    else if(s1.length()<5 || s2.length()<6  )
    {
      this->btn->setStyleSheet("background-color:red");
      this->btn->setEnabled(false);
    }
 
 
}
 
MyWidget::~MyWidget()
{
    delete ui;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1668022.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

浅谈SiC MOSFET之MOSFET

1.掺杂后的半导体 P型半导体&#xff0c;多子是空穴&#xff0c;少子是自由电子。 N型半导体&#xff0c;多子是自由电子&#xff0c;少子是空穴。 2.电中性 尽管他们分别有着空穴带正电&#xff0c;自由电子带负电&#xff0c;但是整体上是电中性的。 以P型半导体为例&…

Leaflet.canvaslabel在Ajax异步请求时bindPopup无效的解决办法

目录 前言 一、场景重现 1、遇到问题的代码 2、问题排查 二、通过实验验证猜想 1、排查LayerGroup和FeatureGroup 2、排查Leaflet.canvaslabel.js 三、柳暗花明又一村 1、点聚类的办法 2、歪打正着 总结 前言 在上一篇博客中介绍了基于SpringBoot的全国风景区WebGIS按…

实验室纳新宣讲会(java后端)

前言 2024-5-12 22:00:39 这是陈旧已久的草稿 2021-09-16 15:41:38 发布一下 当时我进入实验室&#xff0c;也是大二了&#xff0c;实验室纳新需要宣讲&#xff0c; 但是当时有疫情&#xff0c;又没宣讲成。 实验室纳新宣讲会&#xff08;java后端&#xff09; 首先&#x…

重写muduo之TcpConnection

目录 1、 TcpConnection.h 2、 TcpConnection.cc 1、 TcpConnection.h TcpConnection底层绑定&#xff08;管理&#xff09;了一个Channel&#xff0c;Channel有事件被Poller通知后&#xff0c;会调用相应的回调&#xff0c;这些回调也是TcpConnection中包含的方法&#xff0c…

国产操作系统下Chrome的命令行使用 _ 统信 _ 麒麟

原文链接&#xff1a;国产操作系统下Chrome的命令行使用 | 统信 | 麒麟 Hello&#xff0c;大家好啊&#xff01;今天我们来聊聊如何在国产操作系统上使用命令行操作Google Chrome。无论是进行自动化测试、网页截图还是网页数据抓取&#xff0c;使用命令行操作Google Chrome都能…

房屋出租管理系统需求分析及功能介绍

房屋租赁管理系统适用于写字楼、办公楼、厂区、园区、商城、公寓等商办商业不动产的租赁管理及租赁营销&#xff1b;提供资产管理&#xff0c;合同管理&#xff0c;租赁管理&#xff0c; 物业管理&#xff0c;门禁管理等一体化的运营管理平台&#xff0c;提高项目方管理运营效率…

51输出周期为40ms的方波(C+汇编)

题目 已知Fosc12MHz&#xff0c;T1工作于方式1&#xff0c; ①&#xff1a;实现20ms延时&#xff0c;求定时器初值TH0&#xff1f;TL0&#xff1f;写出具体的计算过程。 ②&#xff1a;利用汇编或C语言编程实现输出周期为40ms的方波。 周期为40ms的方波&#xff0c;半周期就…

纯CSS实现步骤条

纯CSS实现纵向Steps步骤条效果 效果图 实现思路 步骤条是一种用于引导用户按照特定流程完成任务的导航条&#xff0c;在各种分步表单交互场景中广泛应用。步骤条通常由编号、名称和引导线三个基本要素组成。本文中要实现的是一个简单的步骤条&#xff0c;包含上述三个基本要素…

Leetcode经典题目之用队列实现栈

P. S.&#xff1a;以下代码均在VS2019环境下测试&#xff0c;不代表所有编译器均可通过。 P. S.&#xff1a;测试代码均未展示头文件stdio.h的声明&#xff0c;使用时请自行添加。 目录 1、题目展示2、题目分析3、完整代码演示4、结语 1、题目展示 前面我们了解过如何实现队列…

webservice和TCP类型接口测试

1.webservice类型接口 1.1.webservice类型接口介绍 Web服务&#xff08;WebService&#xff09;是一种基于网络的应用程序接口&#xff08;API&#xff09;&#xff0c;可通过网络来进行通信和交互。它们使用标准化的协议和格式来进行通信&#xff0c;最常见的是使用XML&#…

C++类与对象的一些练习

1.设计一个名为Rectangle的矩形类&#xff0c;其属性为矩形的长和宽&#xff0c;能计算和输出矩形的周长和面积。 class Rectangle { public:Rectangle(int c0,int k0):m_c(c),m_k(k){}int length()//周长{return 2 * (m_c m_k);}int area()//面积{return m_c * m_k;} privat…

本人通过三次电话沟通,帮助一位海外应届生进了知名公司

本人一直在做Java面试辅导&#xff0c;也经常写些Java求职类的文章&#xff0c;这里为了避免抽象&#xff0c;就写一个具体的成功案例。可以这样说&#xff0c;这位求职者在写简历和找工作时遇到的问题具有一定的普遍性&#xff0c;所以这里本人就以此为例&#xff0c;再进一步…

IPv6路由配置:ripng、ospfv3、静态路由

本次主要是对ipv6路由的配置&#xff0c;先了解ipv6&#xff0c;再进行实验配置 目录 一、&#x1f349; 什么是IPV6&#xff1f;&#x1f31f;IPv6的主要特点 二、&#x1f349;IPv6和IPv4的对比&#x1f31f; 共同点:&#x1f31f; IPv4的优缺点:&#x1f31f; IPv6的优缺点:…

天下大爱唯母爱

岁月轮转&#xff0c;人生寻常&#xff0c;又逢一年母亲节。作为子女&#xff0c;这是所有人都参与节日&#xff0c;也是每一位母亲在繁忙日常中&#xff0c;一个短暂的休息&#xff0c;停下手中的忙碌&#xff0c;听孩子的一声祝福&#xff1a;妈妈辛苦了&#xff0c;母亲节快…

pycharm 里面安装 codeium 插件的时候,不能够弹出登录界面

pycharm 里面安装 codeium 插件的时候&#xff0c;不能够弹出登录界面 pycharm 里面安装 codeium 插件的时候&#xff0c;不能够弹出登录界面--解决如下A pycharm 里面安装 codeium 插件的时候&#xff0c;不能够弹出登录界面–解决如下 #踩坑/pycharm/codeium插件无法登录 安…

修改mysql locahost或者127.0.0.1弱密码问题

一、登录有问题的数据库 sudo mysql -uroot -pxxx -hkde-offline1 -P13306 二、查询user表 这将显示与 root 用户关联的主机、用户名以及加密后的认证字符串(密码)。请注意,authentication_string 列中存储的是经过哈希加密后的密码,而不是原始密码。 MySQL [mysql…

FCOS长文详解

1. 概述 FCOS是一种one-stage、全卷积&#xff08;Fully Convolutional&#xff09;结构的目标检测模型&#xff0c;发表于2019年ICCV。&#xff08;什么是one-stage&#xff1f;&#xff09; 论文原地址&#xff1a;https://arxiv.org/abs/1904.01355 作者源码&#xff1a;ht…

告别数据泥潭:PySpark性能调优的黄金法则

阿佑今天给大家带来个一张藏宝图——使用PySpark进行性能调优的黄金法则&#xff0c;从内存管理到执行计划&#xff0c;再到并行度设置&#xff0c;每一步都是提升数据处理速度的关键&#xff01; 文章目录 Python Spark 详解1. 引言2. 背景介绍2.1 大数据处理技术演变2.2 Apac…

小猫咪邮件在线发送系统源码,支持添加附件

一款免登录发送邮件&#xff0c;支持发送附件&#xff0c;后台可添加邮箱,前台可选择发送邮箱 网站数据采取本地保存&#xff0c;所以使用前请给网站修改权限&#xff0c;否则很多功能将无法使用 安装教程&#xff1a; 1.上传服务器或者主机 2.登录后台&#xff0c;添加发送…

胆子真大,敢搞B站

今天给大家分享一款浏览器插件&#xff0c;能让你的B站在电脑端访问时候会更高级 作者已经开源到Github Star数量还在持续上升中 来看下这款插件究竟具备哪些功能 首先是开启首页干净模式&#xff0c;也就是去除大屏 正常情况我们访问B站是这个样子的~ 开启总开关后 首页的视…