当前位置: 首页 > article >正文

QT作业1

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

头文件代码:

#ifndef MYWIDGET_H
#define MYWIDGET_H

#include <QWidget>
#include <QIcon>
#include <QLabel>      //标签类
#include <QMovie>      //动图类
#include <QLineEdit>   //行编辑器类
#include <QPushButton> //按钮类

class MyWidget : public QWidget
{
    Q_OBJECT

public:
    MyWidget(QWidget *parent = nullptr);
    ~MyWidget();
};
#endif // MYWIDGET_H

源文件:

#include "mywidget.h"

MyWidget::MyWidget(QWidget *parent)
    : QWidget(parent)
{
    //设置并固定窗口大小
    this->setFixedSize(600,500);
    //设置窗口的图片
    this->setWindowIcon(QIcon("D:/桌面/pictrue/1.jpg"));
    //设置窗口的标题
    this->setWindowTitle("登录账号界面");

    //创建一个标签类指针同时将父对象设为当前this指针指向的对象w
    QLabel *lab1 = new QLabel(this);
    //设置标签大小
    lab1->resize(600,150);
    //创建一个动图类指针接收动图
    QMovie *mv = new QMovie("D:/桌面/pictrue/dt.gif");
    //将动图放入标签中
    lab1->setMovie(mv);
    //让动图动起来
    mv->start();
    //自动适应lab1
    lab1->setScaledContents(true);

    //创建一个标签类指针同时将父对象设为当前this指针指向的对象w
    QLabel *lab2 = new QLabel(this);
    //设置标签的大小
    lab2->resize(50,50);
    //移动标签的位置
    lab2->move(170,200);
    //设置标签的图片
    lab2->setPixmap(QPixmap("D:/桌面/pictrue/2.jpg"));
    //自动适应lab2
    lab2->setScaledContents(true);

    //创建一个标签类指针同时将父对象设为当前this指针指向的对象w
    QLabel *lab3 = new QLabel(this);
    //设置标签的大小
    lab3->resize(50,50);
    //移动标签的位置
    lab3->move(170,260);
    //设置标签的图片
    lab3->setPixmap(QPixmap("D:/桌面/pictrue/3.jpg"));
    //自动适应lab3
    lab3->setScaledContents(true);

    //创建一个行编辑器类的指针同时将父对象设为当前this指针指向的对象w
    QLineEdit *edit1 = new QLineEdit(this);
    //设置行编辑器的大小
    edit1->resize(200,50);
    //移动行编辑器的位置
    edit1->move(220,200);
    //占位
    edit1->setPlaceholderText("账号");

    //创建一个行编辑器类的指针同时将父对象设为当前this指针指向的对象w
    QLineEdit *edit2 = new QLineEdit(this);
    //设置行编辑器的大小
    edit2->resize(200,50);
    //移动行编辑器的位置
    edit2->move(220,260);
    //占位
    edit2->setPlaceholderText("密码");
    //设置显示模式
    edit2->setEchoMode(QLineEdit::Password);

    //创建一个按钮类的指针同时设置文本并将父对象设为当前this指针指向的对象w
    QPushButton *btn1 = new QPushButton("登录",this);
    //设置按钮大小
    btn1->resize(300,50);
    //移动按钮的位置
    btn1->move(150,350);
    //设置按钮的颜色并倒角
    btn1->setStyleSheet("background-color:rgb(40,200,250)");
}

MyWidget::~MyWidget()
{
}

主函数文件:

#include "mywidget.h"

#include <QApplication>

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

运行结果:

思维导图:


http://www.kler.cn/news/161631.html

相关文章:

  • vscode eide arm-gcc 编译环境搭建调试
  • springboot集成cxf
  • 【开源】基于JAVA的个人健康管理系统
  • 华为配置Smart Link负载分担示例
  • Hadoop3.x完全分布式环境搭建Zookeeper和Hbase
  • QT----Visual Studio打开.ui文件报错无法打开
  • debian11,debian 如何删除虚拟内存,交换分区
  • 【Https】HTTPS协议 的介绍及作用
  • Sql Server关于表的建立、修改、删除
  • Appium 并行测试多个设备
  • 【.NET Core】Linq查询运算符(二)
  • 5组10个共50个音频可视化效果PR音乐视频制作模板
  • 制作一个RISC-V的操作系统五-RISC-V汇编语言编程二
  • docker build构建报错:shim error: docker-runc not installed on system
  • 利用 Python 进行数据分析实验(五)
  • 基于微信小程序的智慧校园导航系统研究
  • 2. PyTorch——Tensor和Numpy
  • SpringBoot框架+原生HTML开发,基于云端SaaS服务方式的电子病历编辑器源码
  • Python源码分享10:使用海龟画图turtle画哆啦A梦
  • 微信小程序 - 文件工具类 fileUtil.js
  • 基于Hadoop技术的计算机专业画像平台的设计与研究
  • 数据清洗、特征工程和数据可视化、数据挖掘与建模的主要内容
  • FFmpeg开发笔记(六)如何访问Github下载FFmpeg源码
  • Django + Matplotlib:实现数据分析显示与下载为PDF或SVG
  • LCM-LoRA:a universal stable-diffusion acceleration module
  • 基于ssm少儿编程管理系统源码和论文
  • 高翔《自动驾驶与机器人中的SLAM技术》第九、十章载入静态地图完成点云匹配重定位
  • 计算机毕业设计 基于大数据的智能家居销量数据分析系统的设计与实现 Java实战项目 附源码+文档+视频讲解
  • 如何进行多ip服务器租用?
  • 若依微服务项目整合rocketMq