mywidget.cpp
#include "mywidget.h"
Mywidget::Mywidget(QWidget *parent)
: QWidget(parent)
{
/********制作一个QQ登录界面*********************/
this->resize(535,415);//设置登录窗口大小
this->setFixedSize(535,415);//固定窗口大小
this->setWindowTitle("QQ");//设置窗口标题
this->setWindowIcon(QIcon("C:/Users/Administrator/Desktop/pictrue/qq"));//设置窗口图标
this->setStyleSheet("background-color:white");//背景设置成白色
this->setWindowFlag(Qt::FramelessWindowHint);//隐藏窗口,设置为纯净窗口
QLabel *lab1=new QLabel(this);//动态图标签
lab1->resize(535,135);//动态标签大小
QMovie *mv=new QMovie("C:/Users/Administrator/Desktop/pictrue/QQ3");//设置一个动态图对象指针接收动态图
lab1->setMovie(mv);//将动图设置到lab1标签中
mv->start();//让动图动起来
lab1->setScaledContents(true);//让图片自适应标签设置大小
QLabel *lab2=new QLabel(this);//qq图标签
lab2->resize(94,50);//qq标签大小
lab2->setPixmap(QPixmap("C:/Users/Administrator/Desktop/pictrue/94x50"));
lab2->setScaledContents(true);//让图片自适应标签设置大小
QPushButton *btn1=new QPushButton("?",this);//设置按钮
btn1->resize(20,20);//设置按钮大小
btn1->move(440,0);//设置按钮位置
btn1->setStyleSheet("background-color:rgb(14,114,240)");//设置按钮背景颜色
QPushButton *btn2=new QPushButton("-",this);//设置最小化按钮
btn2->resize(20,20);//设置按钮大小
btn2->move(460,0);//设置按钮位置
btn2->setStyleSheet("background-color:rgb(14,114,240)");//设置按钮背景颜色
QPushButton *btn3=new QPushButton("x",this);//设置退出按钮
btn3->resize(20,20);//设置按钮大小
btn3->move(480,0);//设置按钮位置
btn3->setStyleSheet("background-color:rgb(14,114,240)");//设置按钮背景颜色
QLabel *lab3=new QLabel(this);//qq头像图标签
lab3->resize(80,80);//qq标签大小
lab3->setStyleSheet("background-color:rgb(14,114,240)");
lab3->setPixmap(QPixmap("C:/Users/Administrator/Desktop/pictrue/QQ"));
lab3->move(228,95);//设置头像位置
lab3->setScaledContents(true);//让图片自适应标签设置大小
QLabel *lab4=new QLabel(this);//账号图标
lab4->resize(24,36);//标签大小
lab4->setPixmap(QPixmap("C:/Users/Administrator/Desktop/pictrue/24x36"));
lab4->move(120,220);//设置位置
lab4->setScaledContents(true);//让图片自适应标签设置大小
QLineEdit *edit1=new QLineEdit(this); //账户输入行编辑器
edit1->resize(260,24);//设置行编辑大小
edit1->move(144,225);//设置位置
edit1->setPlaceholderText("QQ号码/手机/邮箱");//设置占位
QPushButton *btn4=new QPushButton("<>",this);//设置历史切换按钮
btn4->resize(20,24);//设置按钮大小
btn4->move(404,225);//设置按钮位置
QLabel *lab5=new QLabel(this);//密码图标
lab5->resize(24,36);//标签大小
lab5->setPixmap(QPixmap("C:/Users/Administrator/Desktop/pictrue/24xxx36"));
lab5->move(120,254);//设置位置
lab5->setScaledContents(true);//让图片自适应标签设置大小
QLineEdit *edit2=new QLineEdit(this); //密码输入行编辑器
edit2->resize(260,24);//设置行编辑大小
edit2->move(144,266);//设置位置
edit2->setPlaceholderText("密码");
edit2->setEchoMode(QLineEdit::Password);//设置显示模式
QPushButton *btn5=new QPushButton("::",this);//设置鼠标输入按钮
btn5->resize(20,24);//设置按钮大小
btn5->move(404,266);//设置按钮位置
QPushButton *btn6=new QPushButton(QIcon("C:/Users/Administrator/Desktop/pictrue/19x19")," 自动登录",this);//勾选自动登录按钮
btn6->resize(100,21);//设置按钮大小
btn6->move(121,300);//设置按钮位置
QPushButton *btn7=new QPushButton(QIcon("C:/Users/Administrator/Desktop/pictrue/19x19")," 记住密码",this);//记住密码按钮
btn7->resize(100,21);//设置按钮大小
btn7->move(231,300);//设置按钮位置
QPushButton *btn8=new QPushButton("找回密码",this);//找回密码按钮
btn8->resize(80,21);//设置按钮大小
btn8->move(344,300);//设置按钮位置
QPushButton *btn9=new QPushButton("登录",this);//登录按钮
btn9->resize(301,45);//设置按钮大小
btn9->move(123,340);//设置按钮位置
btn9->setStyleSheet("background-color:rgb(8,189,253)");//设置按钮颜色
QPushButton *btn10=new QPushButton("注册账号",this);//注册账号按钮
btn10->resize(80,21);//设置按钮大小
btn10->move(15,390);//设置按钮位置
QPushButton *btn11=new QPushButton(QIcon("C:/Users/Administrator/Desktop/pictrue/30x30"),"",this);//扫二维码登录按钮
btn11->resize(30,30);//设置按钮大小
btn11->move(490,381);//设置按钮位置
}
Mywidget::~Mywidget()
{
}
main.cpp
#include "mywidget.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Mywidget w;
w.show();
return a.exec();
}
mywidget.h
#ifndef MYWIDGET_H
#define MYWIDGET_H
#include <QWidget>
#include <QIcon>//图标类
#include <QMovie> //动图类
#include <QLabel> //标签类
#include <QPushButton> //按钮类
#include <QLineEdit> //行编辑器
class Mywidget : public QWidget
{
Q_OBJECT
public:
Mywidget(QWidget *parent = nullptr);
~Mywidget();
};
#endif // MYWIDGET_H
效果图: