QT登陆注册界面练习

一、界面展示

二、主要功能界面代码

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QMainWindow(parent), ui(new Ui::Widget)
{ui->setupUi(this);this->setFixedSize(540,410);                 //设置固定尺寸this->setWindowTitle("CQQ聊天室");          //窗口标题this->setWindowIcon(QIcon("E:/QT/QT/day1_h/icon/wodepeizhenshi.png"));   //设置窗口的icon//1、实例化标签QLabel *lab1 = new QLabel("LOGO",this);lab1->resize(540,205);lab1->setPixmap(QPixmap("E:/QT/QT/day1_h/icon/logo.png"));lab1->setScaledContents(true);                 //设置内容自适应QLabel *lab2 = new QLabel("账号",this);lab2->resize(35,35);lab2->move(115,230);lab2->setPixmap(QPixmap("E:/QT/QT/day1_h/icon/userName.jpg"));lab2->setScaledContents(true);QLabel *lab3 = new QLabel("密码",this);lab3->resize(35,35);lab3->move(lab2->x(),lab2->y()+65);lab3->setPixmap(QPixmap("E:/QT/QT/day1_h/icon/passwd.jpg"));lab3->setScaledContents(true);//2、构造行编辑器,构造时给定父组件QLineEdit *edit1 = new QLineEdit(this);edit1->setPlaceholderText("QQ/手机/邮箱");           //设置编辑器的占位文本edit1->resize(230,40);                              //设置尺寸edit1->move(lab2->x()+80,lab2->y());                //移动位置edit1->setStyleSheet("broder-color:black");         //设置样式表//3、构造行编辑器,构造时给定父组件以及文本内容QLineEdit *edit2 = new QLineEdit(this);edit2->setPlaceholderText("密码");                   //设置编辑器的占位文本edit2->resize(230,40);                              //设置尺寸edit2->move(lab3->x()+80,lab2->y());                //移动位置edit2->resize(edit1->size());edit2->move(edit1->x(),edit1->y()+60);edit2->setEchoMode(QLineEdit::Password);             //设置回显模式//4、使用无参构造添加一个按钮QPushButton *btn1 = new QPushButton;   //无参构造btn1->setParent(this);         //给组件指定父组件,让其依附于界面而存在btn1->setText("登录");         //给组件设置文本内容btn1->resize(QSize(90,35));   //设置按钮组件的大小btn1->move(195,360);          //移动组件位置btn1->setIcon(QIcon("E:/QT/QT/day1_h/icon/login.png"));//5、构造按钮时,指定父组件QPushButton *btn2 = new QPushButton(this);      //将当前界面设置成父组件btn2->setText("取消");btn2->resize(btn1->size());                     //使用其他按钮的大小设置该组件的大小btn2->move(btn1->x()+140,btn1->y());btn2->setIcon(QIcon("E:/QT/QT/day1_h/icon/cancel.png"));    //设置图标}Widget::~Widget()
{delete ui;
}

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

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

相关文章

react+koa+vite前后端模拟jwt鉴权过程

路由组件(生成token) const Router require(koa/router) const jwt require(jsonwebtoken); const router new Router()const mockDbUserInfo [{nickname: xxxliu,username: Tom,password: 123456,icon: url1},{nickname: xxx,username: John,passw…

设计模式二十三:模板方法模式(Template Method Pattern)

定义了一个算法的框架,将算法的具体步骤延迟到子类中实现。这样可以在不改变算法结构的情况下,允许子类重写算法的特定步骤以满足自己的需求 模版方法使用场景 算法框架固定,但具体步骤可以变化:当你有一个算法的整体结构是固定…

android Junit4编写自测用例

10多年的android开发经验,一直以来呢,也没有使用过android自带的测试代码编写。说来也惭愧。今天也花了点时间稍微研究了下。还挺简单。接下来就简单的说一下。 新建工程 直接默认新建一个工程,就会有两个目录androidTest和test(unitTest)两…

mac下安装tomcat

1. 官网下载Apache Tomcat - Apache Tomcat 9 Software Downloads 2. 授权bin目录下所有.sh文件权限sudo chmod 755 *.sh 3. 启动程序(后台运行) sudo sh ./startup.sh 4. 在当前窗口启动程序,随时看到日志sudo sh ./catalina.sh run 5. 关闭程序 sudo sh ./shu…

CSS中如何改变鼠标指针样式(cursor)?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ CSS中改变鼠标指针样式(cursor)⭐ 示例:⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅…

解决Graphics2D造成的中文乱码问题

解决Graphics2D 分别在 linux下与docker下的乱码问题 一、linux 下载宋体,并将宋体文件拷贝到/usr/share/fonts/chinese下,下载地址宋体,或从本地window的C:\Windows\Fonts下复制。安装字体索引工具 yum install -y mkfontscale yum instal…

免费OCR图像识别文字识别API

免费OCR图像识别文字识别API 一、OCR图像识别文字识别二、使用步骤1、接口2、请求参数3、请求参数示例4、接口 返回示例 三、温馨提示 一、OCR图像识别文字识别 光学字符识别(Optical Character Recognition, OCR)是指对文本资料的图像文件进行分析识别…

Visual Studio 2022的MFC框架——AfxWinMain全局对象和InitInstance函数

我是荔园微风,作为一名在IT界整整25年的老兵,今天我们来重新审视一下Visual Studio 2022下开发工具的MFC框架知识。 在看这篇帖子前,请先看我的另一篇帖子《Visual Studio 2022的MFC框架——应用程序向导》。 当程序调用了CWinApp类的构造…

No message found under code ‘-1‘ for locale ‘zh_CN‘.

导出中的报错:No message found under code -1 for locale zh_CN. 报错原因:页面中展示的数据和后端excel中的数据不一致导致 具体原因:

【C语言】#define 宏定义初步使用

使用宏定义可以防止出错,提高可移植性,可读性,方便性等。 下面列举了一些成熟软件中常用的宏定义。 重新定义一些基本类型 重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便…

java springboot sql防注入的6种方式

​在Spring Boot中,可以通过使用参数绑定、预处理语句和使用ORM框架等方式来防止SQL注入。以下是几种常见的方式: 1. 参数绑定:通过使用参数绑定,将用户输入的数据作为参数传递给SQL语句,而不是将其直接拼接到SQL语句中…

【记录】Truenas scale|NFSv4数据集的子目录或文件的ACL完全访问权限继承老是继承不了怎么回事

我遇到了数据集下新建文件夹或文件,新建的文件夹或文件没有和数据集的ACL设置相符合的情况。其根本原因是NFSv4的完全访问权限要想继承的话,它的访问设置权限要设置“用户”和“组”的,就是,一定要选择中文的那个设置。纯owner和g…

FairyGUI编辑器的弹窗操作【插件】

之前在FairyGUI编辑器菜单扩展中,我使用了App.Alert("复制失败")来提示操作是否成功。这篇则会说一下我们可以使用的弹窗提示,以及做到类似资源发布成功时的“发布成功”飘窗。 打开APP的API脚本,可以看到有很多公开方法&#xff…

数字化技术无限延伸,VR全景点亮智慧生活

随着互联网的发展,我们无时无刻不再享受着互联网给我们带来的便利,数字化生活正在无限延伸,各行各业也开始积极布局智能生活。要说智慧生活哪个方面应用的比较多,那应该就是VR全景了,目前VR全景已经被各个行业广泛应用…

观察者模式简介

概念: 观察者模式(Observer Pattern)是一种行为型设计模式,用于在对象之间建立一对多的依赖关系,当一个对象的状态发生变化时,其相关依赖对象会自动收到通知并进行相应处理。 特点: 松耦合&a…

HT for Web (Hightopo) 使用心得(6)- 3D场景环境配置(天空球,雾化,辉光,景深)

在前一篇文章《Hightopo 使用心得(5)- 动画的实现》中,我们将一个直升机模型放到了3D场景中。同时,还利用动画实现了让该直升机围绕山体巡逻。在这篇文章中,我们将对上一篇的场景进行一些环境上的丰富与美化。让场景更…

《C和指针》笔记16:赋值容易出现的误区: 赋值截短

在下面的语句中,认为a和x被赋予相同的值的说法是不正确的: a x y 3;它等价于 a (x y 3);如果x是一个字符型变量,那么y3的值就会被截去一段,以便容纳于字符类型的变量中。那么a所赋的值就是这个被截短后的值。在下面这个常…

【C语言基础】变量类型,Static关键字的使用

📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨ 📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 📢:文章若有幸对你有帮助,可点赞 👍…

Effective C++条款20——宁以pass-by-reference-to-const替换pass-by-value(设计与声明)

缺省情况下C以by value方式(一个继承自C的方式)传递对象至(或来自)函数。除非你另外指定,否则函数参数都是以实际实参的复件(副本)为初值,而调用端所获得的亦是函数返回值的一个复件。这些复件&…

浅谈单例模式在游戏开发中的应用

前言 如果在外部想在不同的时间结点、不同的位置访问某类中的成员且想要保持访问时,成员地址唯一。那么可以考虑将该类声明为静态类,但若是成员中包含公共的数据类型,此时便可以考虑将该类做成一个单例。 单例模式 由于类中的数据&#x…