初见QT,控件的基本应用,实现简单登录窗口

窗口实现代码

cpp 复制代码
#include "widget.h"


Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    //窗口设置
    this->setFixedSize(538, 373);                                   //固定窗口大小
    this->setWindowIcon(QIcon("G:\\QT_Icon\\windos_icon2.png"));    //设置窗口图标
    this->setWindowTitle("My QQ");                                  //设置窗口标题

    //窗口界面
    QLabel *lab1 = new QLabel(this);                                //设置背景颜色
    QLabel *lab2 = new QLabel(this);                                //设置头像
    lab1->resize(538, 153);                                         //背景颜色范围
    lab1->setStyleSheet("background-color:skyblue");                //设置背景颜色样式

    lab2->setPixmap(QPixmap("G:\\QT_Icon\\windos_icon2.png"));      //设置头像图标
    lab2->resize(80, 80);                                           //设置头像大小
    lab2->setScaledContents(true);                                  //头像自适应填满
    lab2->move(229, 53);                                            //设置头像位置

    //输入框
    QLineEdit *ledit1 = new QLineEdit(this);                        //账号输入
    QLineEdit *ledit2 = new QLineEdit(this);                        //密码输入
    ledit1->resize(260, 40);
    ledit2->resize(260, 40);

    ledit1->move(159, lab2->y()+120);                               //设置账号框位置
    ledit2->move(ledit1->x(), ledit1->y()+60);                      //设置密码框位置

    ledit1->setPlaceholderText("QQ账号/手机号/邮箱");                  //设置占位文本
    ledit2->setEchoMode(QLineEdit::Password);                        //设置密码回显
    ledit1->setMaxLength(16);
    ledit2->setMaxLength(16);

    //输入栏前置图标
    QLabel *lab3 = new QLabel(this);
    QLabel *lab4 = new QLabel(this);
    lab3->resize(30, 30);
    lab3->setPixmap(QPixmap("G:\\QT_Icon\\windos_icon1.png"));
    lab3->setScaledContents(true);
    lab3->move(ledit1->x()-40, ledit1->y()+5);

    lab4->setPixmap(QPixmap("G:\\QT_Icon\\password.png"));
    lab4->setScaledContents(true);
    lab4->resize(30, 30);
    lab4->move(ledit2->x()-40, ledit2->y()+5);

    //按键
    QPushButton *btn1 = new QPushButton("登录" ,this);
    btn1->resize(300, 40);
    btn1->setStyleSheet("background-color:rgb(8,189,253);");
    btn1->move(lab3->x(), lab4->y()+60);

}

Widget::~Widget()
{

}

效果图

相关推荐
冷雨夜中漫步8 小时前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
m0_7369191010 小时前
C++代码风格检查工具
开发语言·c++·算法
2501_9449347310 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
黎雁·泠崖11 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
2301_7634724611 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
TechWJ12 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
lly20240612 小时前
C++ 文件和流
开发语言
m0_7066532312 小时前
分布式系统安全通信
开发语言·c++·算法
寻寻觅觅☆13 小时前
东华OJ-基础题-104-A == B ?(C++)
开发语言·c++
杨了个杨898213 小时前
memcached部署
qt·websocket·memcached