QT基础实践之QQ登录界面

文章目录

  • QQ登录界面
    • 源码分享
    • 演示图
    • 代码分析

QQ登录界面

源码分享

链接:https://pan.baidu.com/s/1v_J4WQjZoSAoMrIpx88PbA
提取码:qwer
记得把图片放入Debug文件

演示图

在这里插入图片描述

代码分析

已注释 较为详细
widget.h

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QLabel>
#include <QLineEdit>
#include <QCheckBox>
#include <QRadioButton>
#include <QPushButton>
#include <QCheckBox>


class Widget : public QWidget
{
    Q_OBJECT

public:
    //头像
    QLabel *tx;

    //行编辑框
    QLineEdit *put1;
    QLineEdit *put2;

    //单选按钮
    QRadioButton *P1;

    //登录
    QPushButton *DL;

    //扫码登录,更多选项
    QPushButton *X1;
    QPushButton *X2;

    //显示密码
    QCheckBox *Xs;

    Widget(QWidget *parent = nullptr);
    ~Widget();
};
#endif // WIDGET_H

widget.cpp

#include "widget.h"
#include <QGridLayout>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    //网格布局
    QGridLayout *QQ = new QGridLayout ;

    //设置背景
     this->resize(200,380);
     QPalette pa(this->palette());//创建一个QPalette对象pa,并使用当前窗口部件的调色板(palette)作为构造函数的参数。QPalette用于定义窗口部件的颜色和背景。
     QImage img = QImage("jm.png");//创建图片
     img = img.scaled(this->size());//设置图片大小与界面匹配
     QBrush *pic = new QBrush(img);//创建一个QBrush对象pic,并使用缩放后的图像img作为构造函数的参数。QBrush用于绘制背景。
     pa.setBrush(QPalette::Window, *pic);//将pic设置为QPalette的背景刷子(QBrush),并将其应用于窗口的背景,即将窗口的背景刷子设置为pic。
     this->setAutoFillBackground(true);//启用窗口自动填充背景的功能,以确保窗口能够显示背景。
     this->setPalette(pa);//将之前处理好的QPalette对象pa应用于当前窗口部件,即将窗口的调色板设置为pa,从而实现背景的设定。

     //头像
     tx = new QLabel("头像");
     tx->setScaledContents(true);        //设置标签自动缩放上面的图片
     tx->setPixmap(QPixmap("qq.png"));    //标签显示图片
     tx->setFixedSize(120, 120);

     //密码输入
     put1 = new QLineEdit;
     put1->setPlaceholderText(QStringLiteral("QQ号码/手机/邮箱"));
     put2 = new QLineEdit;
     put2->setPlaceholderText(QStringLiteral("输入QQ密码"));

     //知悉
     P1 = new QRadioButton("已阅读并同意服务协议和QQ隐私保护指引");

     //登录
     DL = new QPushButton("登录");
     DL->setMinimumSize(50, 50);
     DL->setStyleSheet("QPushButton{font:13px;");
     DL->setStyleSheet("color: rgb(255, 255, 255); background-color: rgb(166, 219, 254);");


     //扫码登录,更多选项
     X1 = new QPushButton("扫码登陆");
     X1->setMinimumSize(30, 30);      //设置最小尺寸
     X1->setFlat(true);                 //设置无边框
     X2 = new QPushButton("更多选项");
     X2->setMinimumSize(30, 30);      //设置最小尺寸
     X2->setFlat(true);

     //显示密码
     Xs = new QCheckBox("显示密码");
     put2->setEchoMode(QLineEdit::Password);
     connect(Xs, &QCheckBox::clicked, [&](bool x){
         put2->setEchoMode(x?QLineEdit::Normal:QLineEdit::Password);
     });


    QQ->addWidget(tx,0,1,2,2,Qt::AlignHCenter | Qt::AlignVCenter);
    QQ->addWidget(put1,1,1,1,3);
    QQ->addWidget(put2,2,1,1,3);
    QQ->addWidget(Xs,2,2,1,2,Qt::AlignRight | Qt::AlignVCenter);
    QQ->addWidget(P1,4,1,1,2);
    QQ->addWidget(DL,5,1,1,4);
    QQ->addWidget(X1,6,1,1,1);
    QQ->addWidget(X2,6,2,1,1);
    this->setWindowTitle("QQ");
    setLayout(QQ);


}

Widget::~Widget()
{
}


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Leetcode98 验证二叉搜索树

题意理解&#xff1a; 首先明确二叉树的定义&#xff0c;对于所有节点&#xff0c;根节点的值大于左子树所有节点的值&#xff0c;小于右子树所有节点的值。 注意一个误区&#xff1a; 根节点简单和左孩子&#xff0c;右孩子比大小是不够的&#xff0c;要和子树比&#xff0c;…

Django项目部署本地windows IIS(详细版)和static文件设置(页面样式正常显示)

目录 必要条件&#xff1a; 一、下载并启用wfastcgi 二、window安装 IIS功能 三、IIS管理器中添加网站 1、复制项目 2、复制wfastcgi.py文件 3、创建文件web.config 4、添加网站&#xff0c;填写信息 5、启动fastcgi程序 6、修改进程标识 四、static文件设置和正确显…

凝聚数字经济发展新力量,四象科技受邀出席2023全球数商大会

11月25日&#xff0c;2023全球数商大会在上海开幕。本届大会以“数联全球、商通未来”为主题&#xff0c;上海市委副书记、市长龚正出席大会并宣布大会开幕&#xff0c;国家发展改革委党组成员&#xff0c;国家数据局党组书记、局长刘烈宏&#xff0c;上海市副市长陈杰致辞。四…

智能学习台灯_AI摄像头学习机基于MTk8175方案

智能学习台灯是一款专为中小学生设计的学习辅助工具&#xff0c;具有多项突出的参数和功能。首先&#xff0c;它采用了基于联发科MTK平台的解决方案&#xff0c;内置了12纳米四核Cortex-A53处理器&#xff0c;提供了稳定而高效的性能。操作系统方面&#xff0c;智能学习台灯运行…

山西临县“5·7”火灾事故调查报告公布,揭秘富维烟火报警系统

近日&#xff0c;山西临县“57”火灾事故调查报告震惊全国&#xff0c;提醒我们火灾防控的重要性。在这起悲剧中&#xff0c;我们深刻认识到&#xff0c;及时发现火灾并迅速应对至关重要。这不仅是对生命安全的保护&#xff0c;也是对财产损失的有效减少。而在这方面&#xff0…

SQL注入-报错注入

目录 一&#xff0c;sql报错注入概述&#xff1a; 二&#xff0c;报错注入函数&#xff1a; extractvalue() updatexml() floor()、rand()、count()、group by联用 其它函数 三&#xff0c;SQL报错注入实例&#xff1a; extractvalue() floor()、rand()、count()、grou…

统计学中两组数据如何进行差异性(相关性)分析?

变量说明&#xff1a; 在确定分析方法前&#xff0c;我们需要了解手中的数据类型&#xff0c;这是最基础也是有必要的&#xff0c;在所有的数据类型中&#xff0c;我们将数据类型分为分类变量也为定类变量和连续变量也称为定量变量&#xff0c;那么什么是定类变量&#xff1f;…

通达信抛物线SAR指标原理详解、参数设置及选股公式

抛物线指标(SAR)是由技术分析大师威尔斯威尔德(Welles Wilder)发明的&#xff0c;在其1978 年出版的《技术交易系统新概念》一书中介绍了该指标。SAR指标通过跟踪股票价格的动态变化&#xff0c;在走势图上以一系列点的形式显示&#xff0c;提供了一种判断趋势反转的方法&#…

E云管家开发自动转发朋友圈

简要描述&#xff1a; 转发朋友圈&#xff0c;直接xml数据。(对谁不可见) 请求URL&#xff1a; http://域名地址/forwardSns 请求方式&#xff1a; POST 请求头Headers&#xff1a; Content-Type&#xff1a;application/jsonAuthorization&#xff1a;login接口返回 参…

9.增删改操作

目录 一、插入操作 1、为表的所有字段插入数据 2、为表的指定字段插入数据 3、同时插入多条记录 4、将查询结果插入表中&#xff1a; 二、更新操作 三、删除操作 四、练习题 一、插入操作 在使用数据库之前&#xff0c;数据库中必须要有数据&#xff0c;MYSQL中使INSE…

SimpleDateFormat在多线程下的安全问题

目录 情景重现 SimpleDateFormat解析 解决方案 局部变量 加锁 使用线程变量 使用DateTimeFormatter 情景重现 SimpleDateFormat类是Java开发中的一个日期时间的转化类。它可以满足绝大多数的开发场景&#xff0c;但是在高并发下会出现并发问题。接下来查看下文中的案例。…

JavaEE(SpringMVC)期末复习(选择+填空+解答)

文章目录 JavaEE期末复习一、单选题&#xff1a;二、多选题三、填空题四、解答 JavaEE期末复习 一、单选题&#xff1a; 1.Spring的核⼼技术是&#xff08; A &#xff09;&#xff1f; A依赖注入 B.JdbcTmplate C.声明式事务 D.资源访问 Spring的核心技术包括依赖注入&#x…

​无人机摄影测量

无人机摄影测量技术是传统航空摄影测量手段的有力补充&#xff0c;具有机动灵活、高效快速、精细准确、作业成本低、生产周期短、影像获取空间分辨率高、高危地区探测等优势。无人机与航空摄影测量相结合使得“无人机数字低空遥感”成为航空遥感领域的一个崭新发展方向。无人机…

SpringCloud 微服务全栈体系(十八)

第十一章 分布式搜索引擎 elasticsearch 八、RestClient 查询文档 文档的查询同样适用 RestHighLevelClient 对象&#xff0c;基本步骤包括&#xff1a; 准备 Request 对象准备请求参数发起请求解析响应 1. 快速入门 以 match_all 查询为例 1.1 发起查询请求 代码解读&…

⑤【Sorted Set】Redis常用数据类型: ZSet [使用手册]

个人简介&#xff1a;Java领域新星创作者&#xff1b;阿里云技术博主、星级博主、专家博主&#xff1b;正在Java学习的路上摸爬滚打&#xff0c;记录学习的过程~ 个人主页&#xff1a;.29.的博客 学习社区&#xff1a;进去逛一逛~ 目录 ⑤Redis Zset 操作命令汇总1. zadd 添加或…

Unity RenderFeature架构分析

自定义RenderFeature接口流程 URP内部ScriptableRenderPass分析 public、protected属性 renderPassEvent &#xff1a;渲染事件发生的时刻colorAttachments &#xff1a;渲染的颜色纹理列表 m_ColorAttachmentscolorAttachment &#xff1a;m_ColorAttachments[0];depthAttac…

【解决方案】基于边缘计算技术的安科瑞综合管廊能效管理平台

平台背景 综合管廊一般是建于城市地下用于容纳两类及以上城市工程管线的构筑物及附属设施&#xff0c;将电力、自来水、热力、煤气、电信、网络等市政公用管线根据规划要求集中敷设在同一个构建物内&#xff0c;实施统一设计、施工、管理的市政公用隧道空间&#xff0c;并且还…

在Linux环境如何启动和redis数据库?

Linux中连接redis数据库&#xff1a; 前台启动&#xff1a; 第一步&#xff1a;redis-server:服务器启动命令 当我们启动改窗口后&#xff0c;出现如下所示&#xff1a; 该窗口就不能关闭&#xff0c;否则会出现redis无法使用的情况&#xff0c;重新打开一个窗口&#xff0c…

云服务器哪家便宜?亚马逊AWS等免费云服务器推荐

在这数字化的时代&#xff0c;云计算技术越来越广泛应用于各种场景&#xff0c;尤其是云服务器&#xff0c;作为一种全新的服务器架构正在逐渐取代传统的物理服务器&#xff0c;“云服务器哪家便宜”等用户相关问题也受到越来越多的关注。自从亚马逊最早推出了首个云计算服务—…