Qt11.7

登录窗口的应用场景,实现一个登录窗口界面

头文件:

#ifndef AIKUN_H
#define AIKUN_H

#include <QWidget>
#include <QIcon>  //图标类
#include <QMovie>  //动图类
#include <QLabel>  //标签类
#include <QLineEdit>  //行编辑类
#include <QPushButton>  //按钮类
class AiKun : public QWidget
{
    Q_OBJECT

public:
    AiKun(QWidget *parent = nullptr);
    ~AiKun();
};
#endif // AIKUN_H

源文件:

#include "aikun.h"

AiKun::AiKun(QWidget *parent)
    : QWidget(parent)
{
    //==========窗口设置=============
    this->setWindowTitle("AiKun快聊");//设置窗口标题
    this->setWindowIcon(QIcon("F:\\pictrue\\qqkun.jpg")); //设置窗口图标
    this->setWindowFlag(Qt::FramelessWindowHint);//设置纯净窗口
    this->resize(540,410);//设置窗口大小
    this->setStyleSheet("background-color:rgb(255,255,255)");//设置窗口背景色

    //==========标签设置=============
    QLabel *lab1 = new QLabel(this);  //创建第一个窗口
    lab1->resize(540,160);

    QMovie *mv = new QMovie("F:\\pictrue\\kun.gif");//接收动图
    lab1->setMovie(mv); //将动图放入标签中
    mv->start();//动图动起来
    lab1->setScaledContents(true);//自动适应label

    QLabel *lab2 = new QLabel(this); //创建第二个窗口
    lab2->move(15,15);//移动图标
    lab2->resize(30,35);//设置图标大小
    lab2->setPixmap(QPixmap("F:\\pictrue\\qqkun.jpg"));//放入图片
    lab2->setScaledContents(true);//自动适应label

    QLabel *lab3 = new QLabel(this); //创建第三个窗口
    lab3->move(120,215);//移动图标
    lab3->resize(25,25);//设置图标大小
    lab3->setPixmap(QPixmap("F:\\pictrue\\userName.jpg"));//放入图片
    lab3->setScaledContents(true);//自动适应label

    QLabel *lab4 = new QLabel(this); //创建第四个窗口
    lab4->move(120,260);//移动图标
    lab4->resize(25,25);//设置图标大小
    lab4->setPixmap(QPixmap("F:\\pictrue\\passwd.jpg"));//放入图片
    lab4->setScaledContents(true);//自动适应label


    //==========行编辑器设置=============
    QLineEdit *edit1 = new QLineEdit(this);//创建第一个行编辑
    edit1->move(150,215);//移动行编译
    edit1->resize(280,25); //设置行编辑
    edit1->setPlaceholderText("AiKun号码/手机/邮箱"); //占位

    QLineEdit *edit2 = new QLineEdit(this);//创建第二个行编辑
    edit2->move(150,260);//移动行编译
    edit2->resize(280,25); //设置行编辑
    edit2->setPlaceholderText("密码"); //占位
    edit2->setEchoMode(QLineEdit::Password);//设置显示模式  密码

    //==========按钮设置=============
    QPushButton *btn1 = new QPushButton(this);//设置第一个按钮
    btn1->resize(290,40);//设置按钮大小
    btn1->move(135,340);//移动按钮
    btn1->setStyleSheet("background-color:rgb(31,200,250);border-radius:5px");
    btn1->setText("登录");

    QPushButton *btn2 = new QPushButton(this);//设置第一个按钮
    btn2->resize(86,86);//设置按钮大小
    btn2->move(227,117);//移动按钮

    btn2->setIcon(QIcon("F:\\pictrue\\qqkun.jpg"));//将图片放入按钮
    btn2->setIconSize(btn2->size());//调整图片大小


}

AiKun::~AiKun()
{
}

效果图:

相关推荐
wclass-zhengge13 分钟前
数据结构篇(绪论)
java·数据结构·算法
何事驚慌13 分钟前
2024/10/5 数据结构打卡
java·数据结构·算法
结衣结衣.14 分钟前
C++ 类和对象的初步介绍
java·开发语言·数据结构·c++·笔记·学习·算法
TJKFYY16 分钟前
Java.数据结构.HashSet
java·开发语言·数据结构
kylinxjd17 分钟前
spring boot发送邮件
java·spring boot·后端·发送email邮件
OLDERHARD26 分钟前
Java - MyBatis(上)
java·oracle·mybatis
汪子熙26 分钟前
Angular 服务器端应用 ng-state tag 的作用介绍
前端·javascript·angular.js
杨荧27 分钟前
【JAVA开源】基于Vue和SpringBoot的旅游管理系统
java·vue.js·spring boot·spring cloud·开源·旅游
Envyᥫᩣ34 分钟前
《ASP.NET Web Forms 实现视频点赞功能的完整示例》
前端·asp.net·音视频·视频点赞
枫叶丹42 小时前
【在Linux世界中追寻伟大的One Piece】进程信号
linux·运维·服务器