【Qt】仿照qq界面的设计

widget.h

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include <QDebug>//QT中信息调试类,用于输出数据,无需使用该类的实例化对象,直接使用成员函数即可
#include <QIcon>//图标类
#include <QPushButton>//按钮类
#include <QLabel>//标签类
#include <QMovie>//动画类
#include <QLineEdit>//行编辑器
#include <QDebug>
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent = nullptr);~Widget();private:Ui::Widget *ui;QPushButton *btn1;//登录按钮QPushButton *btn2;//取消按钮QLineEdit *lin1;//账号输入框QLineEdit *lin2;//密码输入框QLabel *lab1;//账号小图标QLabel *lab2;//密码小图标QLabel *lab3;//动图框QLabel *lab4;//用户头像QMovie *movie;//动图private slots:void my_slot(); //自定义登录函数};
#endif // WIDGET_H

widget.cpp

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//设置画布this->resize(500,400);this->setFixedSize(500,400);//设置固定大小不允许拉伸this->setStyleSheet("background-color:white;");//登录按钮btn1 = new QPushButton("登录",this);btn1->resize(100,30);//设置按钮大小btn1->move(149,300);//移动登录按钮btn1->setStyleSheet("background-color:skyblue;border-radius:10;");//设置样式表connect(this->btn1,&QPushButton::clicked,this,&Widget::my_slot);//取消按钮btn2 = new QPushButton("取消",this);btn2->resize(btn1->size());//设置取消按钮和登陆按钮一样大btn2->move(btn1->x()+btn1->width()+2,btn1->y());//移动取消按钮btn2->setStyleSheet("border-radius:10;border: 1px solid black;");//设置样式表//连接取消按到函数中,点击取消执行关闭窗口connect(this->btn2,&QPushButton::clicked,[&](){this->close();});//账号输入框lin1 = new QLineEdit(this);lin1->resize(280,35);//重新设置大小lin1->move(150,200);//移动位置//密码输入框lin2 = new QLineEdit(this);lin2->resize(lin1->size());//重新设置大小lin2->move(lin1->x(),lin1->y()+lin1->height()+5);//移动位置lin2->setPlaceholderText("密码");//设置占位文字lin2->setEchoMode(QLineEdit::Password);//设置回显模式//账号小图标lab1 = new QLabel(this);lab1->resize(35,35);//重新设置大小lab1->move(lin1->x()-36,lin1->y());//设置坐标lab1->setPixmap(QPixmap("D:\\icon\\icon\\zhanghao.png"));//设置图标lab1->setScaledContents(true);//密码小图标lab2 = new QLabel(this);lab2->resize(35,35);//重新设置大小lab2->move(lin2->x()-36,lin2->y());//设置坐标lab2->setPixmap(QPixmap("D:\\icon\\icon\\mima.png"));//设置图标lab2->setScaledContents(true);//动图框lab3 = new QLabel(this);lab3->resize(500, 160);//重新设置大小movie = new QMovie("D:\\icon\\icon\\0019.gif");lab3->setMovie(movie);//将动图放入标签中movie->start();//让动图开始动//让标签内容自适应大小lab3->setScaledContents(true);//用户头像lab4 = new QLabel(this);lab4->resize(70,70);//重新设置大小lab4->move(230,120);//设置坐标lab4->setPixmap(QPixmap("D:\\icon\\icon\\1.jpg"));//设置图标lab4->setStyleSheet("border-radius:10;");lab4->setScaledContents(true);
}void Widget::my_slot()
{if(this->lin1->text() == this->lin2->text()){qDebug()<<"登陆成功";}else{qDebug()<<"登陆失败";}
}Widget::~Widget()
{delete ui;
}

效果展示

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

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

相关文章

代码随想录——回文子串(Leetcode 647)

题目链接 我的题解&#xff08;双指针&#xff09; 思路&#xff1a; 当然&#xff0c;以下是对您提供的代码的解释&#xff1a; class Solution {public int countSubstrings(String s) {// 初始化回文子字符串的数量int count 0;// 遍历字符串的每个字符&#xff0c;使用…

综合评价 | 基于熵权-变异系数-博弈组合法的综合评价模型(Matlab)

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 根据信息熵的定义&#xff0c;对于某项指标&#xff0c;可以用熵值来判断某个指标的离散程度&#xff0c;其信息熵值越小&#xff0c;指标的离散程度越大&#xff0c; 该指标对综合评价的影响&#xff08;即权重&…

基于鸿道Intewell操作系统的运动控制系统方案

随着工业控制行业的蓬勃发展&#xff0c;操作系统实时与非实时业务的深度融合应用需求日益增长&#xff0c;特别是在Windows或Linux平台上处理机器视觉等复杂场景时&#xff0c;传统实时操作系统&#xff08;RTOS&#xff09;面临显著挑战。这些挑战主要体现在两方面&#xff1…

欢迎体验 tuya open-sdk for arduino

我们很高兴地宣布 tuya open-sdk 1.0.0 发布&#xff0c;tuya open-sdk 包括&#xff1a;https://github.com/tuya/tuya-open-sdk-for-device 和 https://github.com/tuya/arduino-tuyaopen 等多个系列&#xff0c;1.1.0 版本正在紧张开发中&#xff0c;敬请期待&#xff01; …

视频监控系统布局策略:EasyCVR视频汇聚平台构建高效、全面的安全防线

随着科技的飞速发展&#xff0c;视频监控系统已成为现代社会安全防范的重要组成部分&#xff0c;广泛应用于公共场所、企业园区、住宅小区等各个领域。一个科学合理的视频监控系统布局与选型策略&#xff0c;不仅能够显著提升安全监控的效率和效果&#xff0c;还能在关键时刻提…

DNN学习平台(GoogleNet、SSD、FastRCNN、Yolov3)

DNN学习平台&#xff08;GoogleNet、SSD、FastRCNN、Yolov3&#xff09; 前言相关介绍1&#xff0c;登录界面&#xff1a;2&#xff0c;主界面&#xff1a;3&#xff0c;部分功能演示如下&#xff08;1&#xff09;识别网络图片&#xff08;2&#xff09;GoogleNet分类&#xf…

揭秘Vue 2生命周期:从创建到毁灭的全面指南

Vue.js作为当前最受欢迎的前端框架之一&#xff0c;其生命周期方法是每个Vue开发者必须掌握的核心内容。下面将详细解释Vue2中的每个生命周期钩子的作用、概念和应用场景&#xff0c;并提供代码演示来进一步阐明其工作原理。以下是关于vue2中的生命周期每个参数的作用、概念、应…

海外网络加速方案:解决海外访问难题

随着全球化的浪潮不断推进&#xff0c;越来越多的人和企业开始涉足海外市场&#xff0c;寻求更广阔的资源与机遇。然而&#xff0c;在海外访问过程中&#xff0c;网络速度慢、连接不稳定等问题频繁出现&#xff0c;不仅影响了个人网络体验&#xff0c;更对企业的日常运营和国际…

【学术会议征稿】2024年第十届机械制造技术与工程材料国际学术会议(ICMTEM 2024)

2024年第十届机械制造技术与工程材料国际学术会议&#xff08;ICMTEM 2024&#xff09; 2024 10th International Forum on Manufacturing Technology and Engineering Materials 第十届机械制造技术与工程材料国际学术会议&#xff08;ICMTEM 2024&#xff09;将于2024年10月…

QT学习之计算器

网格布局初尝试&#xff0c;快速构建计算器 项目结构&#xff1a; wident.h拖动建立界面&#xff0c;20个button&#xff0c;一个lineedit 布局好后整体网格布局调整&#xff0c;依次给每个案件输入文本&#xff0c;并改objectname方便后期辨识 为了在lineedit显示数字&…

WPF性能优化之UI虚拟化

文章目录 前言一、VirtualizingStackPanel1.1 虚拟化功能介绍1、在Window中添加一个ListBox控件。2、在设计视图中用鼠标选中ListBox控件并右健依次单击“编辑其他模板”&#xff0d;“编辑项的布局模板”&#xff0d;“编辑副本”。3、查看生成的模板代码。 1.2 虚拟化参数介绍…

F12抓包04:(核心功能)Network接口抓包、定位缺陷

课程大纲 一、录制请求 ① tab导航选择“网络”&#xff08;Network&#xff09;&#xff0c;即可进入网络抓包界面&#xff0c;进入界面默认开启录制模式&#xff0c;显示浏览器当前标签页的请求列表。 ② 查看请求列表&#xff0c;包含了当前标签页执行的所有请求和下载的资…

分支管理

目录 创建分支 切换分支 合并分支 删除分支 合并冲突 创建分支 git branch [分支]指令 创建新的分⽀后&#xff0c;Git 新建了⼀个指针叫dev&#xff0c; * 表⽰当前 HEAD 指向的分⽀是 master 分⽀。另外&#xff0c;可以通过⽬录结构发现&#xff0c;新的 dev 分⽀…

保姆级教学:OC监听网络状态变化 Reachability监听网络变化 ios网络变化

本文主要讲解了,在oc开发中,怎么去使用代码进行网络监听,十分的通俗易懂。 首先,在xcode工程中导入SystemConfiguration框架。 然后导入Reachability.h文件。 Reachability文件 点击下载,也可以按照如下内容创建对应的文件。 Reachability.m //文件名Reachability.m …

多线程 | synchronized的简单使用

synchronized 关键字是 Java 中解决并发问题的一种常用方法&#xff0c;也是最简单的一种方法&#xff0c;其作用有三个: &#xff08;1&#xff09;互斥性&#xff1a;确保线程互斥的访问同步代码 &#xff08;2&#xff09;可见性&#xff1a;保证共享变量的修改能够及时可见…

探索Pyro4:Python中的远程对象通信艺术

文章目录 探索Pyro4&#xff1a;Python中的远程对象通信艺术背景&#xff1a;为何选择Pyro4&#xff1f;Pyro4是什么&#xff1f;如何安装Pyro4&#xff1f;简单的库函数使用方法场景应用示例常见Bug及解决方案总结 探索Pyro4&#xff1a;Python中的远程对象通信艺术 背景&…

C 语言指针与数组的深度解析

目录 ​编辑 一、引言 二、指针的基本概念 1.定义与声明 2.指针的运算 3.指针的作用 三、数组的基本概念 1.定义与声明 2.数组的初始化 3.数组的大小 四、指针与数组的关系 1.数组名作为指针 2.指针与数组的相互转换 3.指针与数组的参数传递 五、指针与数组的高…

深度学习(九)-图像形态操作

仿射变换 仿射变换是指图像可以通过一系列的几何变换来实现平移、旋转等多种操作。该变换能够保持图像的平直性和平行性。平直性是指图像经过仿射变换后&#xff0c;直线仍然是直线&#xff1b;平行性是指图像在完成仿射变换后&#xff0c;平行线仍然是平行线。 平移 镜像 旋转…

[已更新问题二三matlab+python]2024数学建模国赛高教社杯C题:农作物的种植策略 思路代码文章助攻手把手保姆级

发布于9.6 10:00 有问题后续会修正!! 问题一代码展示: 问题二代码结果展示: 问题三代码展示: https://docs.qq.com/doc/DVVVlV0NmcnBDTlVJ问题一部分代码分享: #!/usr/bin/env python # coding: utf-8# In[15]:import pandas as pd# In[16]:# 读取Excel文件 file_path 附件2…

通义灵码助力高校开学第一课,“包”你满意,新学期加油!

通义灵码作为国内领先的 AI 编码工具&#xff0c;近年来在高校中得到了广泛应用和推广。它不仅帮助大学生更高效地学习编程、提高代码质量&#xff0c;还激发了他们的创新思维&#xff0c;并为未来的职业生涯做好了准备。 通义灵码是什么&#xff1f; 通义灵码是一款基于通义…