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

news2024/12/20 14:15:47

1.手动实现登录框;

---mychat.h---头文件
#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---源文件
#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---测试文件
#include "mychat.h"

#include <QApplication>

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

 

2.今日思维导图;

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/788837.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ERC20 allowance,approve 和 transferFrom

allowance&#xff0c;approve 和 transferFrom&#xff0c;这几个函数提供了一些高级功能&#xff0c;用于授权其他以太坊地址的所有者(spender)代表你使用你的token。这个“其他以太坊地址”可能是一个智能合约&#xff0c;也可能只是一个普通token账户。 ● approve函数。T…

output delay 约束

output delay 约束 一、output delay约束概述二、output delay约束系统同步三、output delay约束源同步 一、output delay约束概述 特别注意&#xff1a;在源同步接口中&#xff0c;定义接口约束之前&#xff0c;需要用create_generated_clock 先定义送出的随路时钟。 二、out…

labview 多线程同步

所谓通讯的同步是指多个线程同时进行或严格按照顺序执行&#xff0c;数据的严格性是指发送多少数据接收多少数据&#xff0c;不能出现数据丢失或重复接收的现象。 labview的同步机制有事件发生、集合点、通知器、信号量。 可以这么来记忆&#xff1a;事急&#xff08;集&…

kotlin高阶函数

kotlin高阶函数 函数式API:一个函数的入参数为Lambda表达式的函数就是函数式api 例子: public inline fun <T> Iterable<T>.filter(predicate: (T) -> Boolean): List<T> {return filterTo(ArrayList<T>(), predicate) }上面这段函数: 首先这个函…

Nginx配置server_name讲解

文章目录 1.Nginx配置中没有server_name会怎样&#xff1f;2.Nginx配置server_name的匹配规则3.正则表达式规则 1.Nginx配置中没有server_name会怎样&#xff1f; 此时Nginx会自动设置成 server_name ""; 它不会匹配任何域名&#xff0c;导致Nginx会优先将HTTP请求交…

2023年7月第3周大模型荟萃

2023年7月第3周大模型荟萃 2023.7.25版权声明&#xff1a;本文为博主chszs的原创文章&#xff0c;未经博主允许不得转载。 1、华为发布大模型时代 AI 存储新品 7 月 14 日华为在深圳发布了大模型时代 AI 存储新品&#xff0c;为基础模型训练、行业模型训练&#xff0c;细分场…

连锁反应开始了!Linux 发行版迎新变化!

任何企业都有合法权利捍卫其模型和产品。撇开大量不真正了解开源许可证如何工作的人不谈&#xff0c;我们的印象是&#xff0c;有很多人觉得仅仅因为这是Linux&#xff0c;他们就有某种权利免费获得它。但事实上&#xff0c;他们没有。这不是自由软件中的“自由”的意思&#x…

【VCS】(5)Fast RTL-level Verification

Fast RTL-level Verification General Coding GuidlinesLab --- simprofile$display() 输出彩色内容 前面的内容都是在说怎样进行仿真和验证&#xff0c;即如何使用 VCS 。 但是&#xff0c;仿真和验证是不是也有所讲究&#xff1f; 有没有一些标准来衡量设计代码和验证代码的质…

面向初学者的APP开发教程:开始你的编程之旅

不管你是已经在 APP开发行业中工作了很长时间&#xff0c;还是正在学习该领域的知识&#xff0c;都有必要开始学习如何编写一个应用程序。对于初学者来说&#xff0c;编写应用程序的第一步是使用 HTML和 CSS构建一个漂亮的UI。 一旦你学会了这些基本技能&#xff0c;你就可以开…

全志F1C200S嵌入式驱动开发(解决spi加载过慢的问题)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 之前的几个章节当中,我们陆续解决了spi-nor驱动的问题、uboot支持spi-nor的问题。按道理来说,下面要做的应该就是用uboot的loady命令把kernel、dtb、rootfs这些文件下载到ddr,然…

【Milvus】记录一次基于milvus-backup做的Milvus备份与恢复

文章目录 环境代码准备备份构建/运行验证 恢复遇到的问题 环境 milvus&#xff1a;v2.2.4 go&#xff1a;1.20.2 darwin/amd64 milvus-backup&#xff1a;v0.2.2 代码准备 https://github.com/zilliztech/milvus-backup/releases 如果你的milvus是2.2.9版本及以上&#xf…

SAP CAP篇十一:支持Media Object:图片、附件等

文章目录 本系列此前的文章官方文档详细修改更新数据库修改Annotation使其显示在Object Page上 运行结果Fiori Object Page上的Attachment Facet选择完文件后的UI效果前台与后台的交互 对应代码及branch 本系列此前的文章 SAP CAP篇一: 快速创建一个Service&#xff0c;基于Ja…

软件测试如何做到充分性测试?

目录 1 提前介入测试 2 测试分析&#xff0c;测试用例设计 3 测试用例评审 4 严格按照测试用例执行测试 5 分解需求 6 交叉测试 7 重点功能要及时跟踪进行测试充分性分析 做软件测试要想保质保量&#xff0c;就要做到测试充分&#xff0c;什么是测试充分&#xff0c;就是…

将数组和减半的最少操作次数(力扣)

将数组和减半的最少操作次数 题目描述思路测试代码复杂度测试结果 题目描述 给你一个正整数数组 nums 。每一次操作中&#xff0c;你可以从 nums 中选择 任意 一个数并将它减小到 恰好 一半。&#xff08;注意&#xff0c;在后续操作中你可以对减半过的数继续执行操作&#xf…

(笔记)深度理解-主成分分析PCA

主成分分析 PCA(Principal Component Analysis)&#xff0c;即主成分分析方法&#xff0c;是一种使用最广泛的数据降维算法。PCA的主要思想是将n维特征映射到k维上&#xff0c;这k维是全新的正交特征也被称为主成分&#xff0c;是在原有n维特征的基础上重新构造出来的k维特征。…

蛋白质分子结构设计

paper read 1 Created by: 银晗 张 Created time: May 27, 2023 3:47 PM Tags: Product 补充了解蛋白质的生物学知识学习一下Diffusion的原理 &#x1f4a1; Method & Innovations Framework Summary: first deep learning models to perform antibody sequence-stru…

随笔--更改已经启动中的容器的配置文件

文章目录 docker 容器的配置信息地址修改文件映射 docker 容器的配置信息地址 # 一般在 sudo su cd /cd /var/lib/docker/containers/{容器id}/ # 查看容器的id,CONTAINER ID就是容器id的前部分 docker ps修改文件映射 进入容器的配置文件位置一般包含这些文件 # 先stop容器…

0基础学习VR全景平台篇 第69篇:VR直播-如何设置广告

直播间可以插入轮播广告&#xff0c;并且支持外链跳转&#xff0c;能够有效地提升VR直播活动的转化率。 1、点击&#xff0c;添加广告 2、广告图展现形式分为两种&#xff1a;普通广告和全屏广告&#xff0c;普通广告在非全屏播放的直播间显示&#xff0c;全屏广告在全屏播放的…

特征选择策略:为检测乳腺癌生物标志物寻找新出口

内容一览&#xff1a;microRNA&#xff08;小分子核糖核酸&#xff09;是一类短小的单链非编码 RNA 转录体。这些分子在多种恶性肿瘤中呈现失控性生长&#xff0c;因此近年来被诸多研究确定为确诊癌症的可靠的生物标志物 (biomarker)。在多种病理分析中&#xff0c;差异表达分析…

在 “小小容器” WasmEdge 里运行小小羊驼 llama 2

昨天&#xff0c;特斯拉前 AI 总监、OpenAI 联合创始人 Andrej Karpathy 开源了 llama2.c 。 只用 500 行纯 C 语言就能训练和推理 llama 2 模型的框架&#xff0c;没有任何繁杂的 python 依赖。这个项目一推出就受到大家的追捧&#xff0c;24 小时内 GitHub 收获 4000 颗星&am…