DAY1,Qt [ 手动实现登录框(信息调试类,按钮类,行编辑器类,标签类的使用)]

1.手动实现登录框;

---mychat.h---头文件
cpp 复制代码
#ifndef MYCHAT_H
#define MYCHAT_H

#include <QWidget>
#include <QDebug>  //打印信息
#include <QIcon> //图标
#include <QPushButton>  //按钮
#include <QLineEdit> //行编辑器类
#include <QLabel>  //标签类

class Mychat : public QWidget
{
    Q_OBJECT

public:
    Mychat(QWidget *parent = nullptr);
    ~Mychat();

    QLabel *lab1;  //标签类,设置背景
    QLabel *lab2;  //设置账号图标
    QLabel *lab3;  //设置密码图标
    QLineEdit *edit1;  //行编辑器类,设置明文账号
    QLineEdit *edit2;  //设置密文密码
    QPushButton *but1;  //按钮类,设置登录按钮
    QPushButton *but2;  //设置取消按钮

};
#endif // MYCHAT_H
---mychar.cpp---源文件
cpp 复制代码
#include "mychat.h"

Mychat::Mychat(QWidget *parent)
    : QWidget(parent)
{
    //对组件界面的设置
    qDebug()<<this->size();
    this->setFixedSize(this->size());  //固定界面尺寸
    this->setWindowOpacity(0.9);  //透明度

    //设置窗口
    this->setWindowTitle(" 轻松一刻的你");  //窗口内容
    this->setWindowIcon(QIcon("D:\\桌面\\qt_icon\\企鹅.png"));  //窗口图标

    //设置背景
    lab1 = new QLabel;
    lab1->setParent(this);  //将当前组件设置为父组件
    lab1->resize(700,200);  //更改标签大小
    lab1->setPixmap(QPixmap("D:\\桌面\\qt_icon\\背景1.jpg"));
    lab1->setScaledContents(true);  //自动适应空间

    //设置登录页面
    //账号密码图形标签
    lab2 = new QLabel;
    lab2->setParent(this);  //将当前组件设置为父组件
    //lab2->setStyleSheet("background-color:blue;");  //参考
    lab2->resize(50,40);  //设置大小
    lab2->move(170,250);  //位置
    lab2->setPixmap(QPixmap("D:\\桌面\\qt_icon\\账号.png"));
    lab2->setScaledContents(true);  //自动适应空间

    lab3 = new QLabel(this);
    //lab3->setStyleSheet("background-color:blue;");  //参考
    lab3->resize(lab2->size());  //设置大小
    lab3->move(170,320);  //位置
    lab3->setPixmap(QPixmap("D:\\桌面\\qt_icon\\密码.png"));
    lab3->setScaledContents(true);  //自动适应空间

    //行文本
    edit1 = new QLineEdit(this);
    edit1->move(260,250);  //位置
    qDebug()<<edit1->size();  //获取大小
    edit1->resize(220,40);  //设置大小
    edit1->setPlaceholderText("账号");  //占位提示

    edit2 = new QLineEdit(this);
    edit2->move(260,320);  //位置
    edit2->resize(edit1->size());  //设置大小
    edit2->setEchoMode(QLineEdit::Password);  //设置密文
    edit2->setPlaceholderText("密码");  //占位提示

    //登录,取消按钮
    but1 = new QPushButton(this);
    qDebug()<<but1->size();  //获取大小
    //but1->setStyleSheet("background-color:red;");  //参考
    but1->move(340,400);  //位置
    but1->resize(70,40);  //设置大小
    but1->setText("登录");  //文本
    but1->setIcon(QIcon("D:\\桌面\\qt_icon\\登录.png"));

    but2 = new QPushButton(this);
    //but2->setStyleSheet("background-color:red;");  //参考
    but2->move(440,400);  //位置
    but2->resize(but1->size());  //设置大小
    but2->setText("取消");  //文本
    but2->setIcon(QIcon("D:\\桌面\\qt_icon\\取消.png"));
}

Mychat::~Mychat()
{
}
---main.cpp---测试文件
cpp 复制代码
#include "mychat.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Mychat w;
    w.show();
    return a.exec();
}
结果---

2.今日思维导图;

相关推荐
2601_956121971 小时前
背包基础篇(01、完全、分组、多重、混合)
c++·算法·动态规划
丰锋ff1 小时前
基于 Qt 的智能门禁系统(二)
开发语言·qt
fpcc1 小时前
跟我学C++中级篇——编译期的条件选择
开发语言·c++
ShineWinsu6 小时前
对于C++:C++20中线程、初始化、Lambda与内存视图等特性的解析
c++·c++20
进击ing小白6 小时前
Qt 无边框窗口进阶指南
开发语言·qt
张张的快乐时光呀!7 小时前
记录使用 MFC 打开文件对话框读取一张图片并做简单的灰度转换算法简单学习过程
c++·mfc
东华万里8 小时前
第41篇 C++类与对象核心知识梳理:从底层原理到面试实战
开发语言·c++·大学生专区
qq_589666059 小时前
C语言、C++与C#的区别详解
c语言·c++·c#
万法若空9 小时前
排列组合恒等式
c++·算法
老洋葱Mr_Onion10 小时前
【C++】CSP-J初赛模拟卷七错题整理(作者自用)
c++·算法·深度优先