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

qt部分核心机制

作业

1> 手动将登录项目实现,不要使用拖拽编程

并且,当点击登录按钮时,后台会判断账号和密码是否相等,如果相等给出登录成功的提示,并且关闭当前界面,发射一个跳转信号,如果登录失败,则给出登录失败的提示,并清空密码框

当点击取消按钮时,直接关闭当前登录框

.h文件

#ifndef MYJOB_H
#define MYJOB_H#include <QMainWindow>
#include <QPushButton>
#include <QLabel>
#include <QWidget>
#include<QLineEdit>
#include <QObject>
#include <QMessageBox>
class myjob : public QMainWindow
{Q_OBJECTsignals:void my_signal();       //定义一个信号函数
public slots:void  btn1_yes_slot();      //自定义槽函数void  btn2_no_slot();
private slots:void  showMessage(){QMessageBox::information(this,"Information","登录失败!");}
public:myjob(QWidget *parent = nullptr);~myjob();
private:QLabel *btn1_Account_label;QLabel *btnlogo_Icon_label;QLabel *btn2_Cryptographic_tag_label;QLineEdit *btn1_Account_entry;QLineEdit *btn2_Password_input;QPushButton *btn1_yes;QPushButton *btn2_no;
};
#endif // MYJOB_H

 源码文件

#include "myjob.h"myjob::myjob(QWidget *parent): QMainWindow(parent)
{//主页面设置this->setFixedSize(400,600);      //主页面大小//logo图标(也是标签)this->btnlogo_Icon_label = new QLabel;btnlogo_Icon_label->setParent(this);    //设置父组件btnlogo_Icon_label->resize(400,150);      //设置标签宽高btnlogo_Icon_label->move(0,0);      //移动标签位置btnlogo_Icon_label->setText("霜雪阅读");     //设置文本btnlogo_Icon_label->setStyleSheet("background-color:green;");     //设置背景颜色,否则看不见btnlogo_Icon_label->setAlignment(Qt::AlignCenter);        //设置对齐方式//账户标签btn1_Account_label = new QLabel;        //无参构造btn1_Account_label->setParent(this);    //设置父组件btn1_Account_label->resize(50,20);      //设置标签宽高btn1_Account_label->move(50,200);      //移动标签位置btn1_Account_label->setText("账户");     //设置文本btn1_Account_label->setStyleSheet("background-color:red;");     //设置背景颜色,否则看不见btn1_Account_label->setAlignment(Qt::AlignCenter);        //设置对齐方式//账户输入btn1_Account_entry = new QLineEdit(this);     //有参构造并设置父组件btn1_Account_entry->resize(150,20);         //设置宽和高btn1_Account_entry->move(btn1_Account_label->x()+btn1_Account_label->width()+10, btn1_Account_label->y());//btn1_Account_entry->setStyleSheet("background-color:pick;");     //设置背景颜色,否则看不见btn1_Account_entry->setAlignment(Qt::AlignCenter);        //设置对齐方式btn1_Account_entry->setPlaceholderText("请输入账号");      //设置占位文本//密码标签btn2_Cryptographic_tag_label = new QLabel;btn2_Cryptographic_tag_label->setParent(this);    //设置父组件btn2_Cryptographic_tag_label->resize(50,20);      //设置标签宽高btn2_Cryptographic_tag_label->move(btn1_Account_label->x(),btn1_Account_label->y()+btn1_Account_label->height()+15);      //移动标签位置btn2_Cryptographic_tag_label->setText("密码");     //设置文本btn2_Cryptographic_tag_label->setStyleSheet("background-color:red;");     //设置背景颜色,否则看不见btn2_Cryptographic_tag_label->setAlignment(Qt::AlignCenter);        //设置对齐方式//密码输入btn2_Password_input = new QLineEdit(this);     //有参构造并设置父组件btn2_Password_input->resize(150,20);         //设置宽和高btn2_Password_input->move(btn2_Cryptographic_tag_label->x()+btn2_Cryptographic_tag_label->width()+10, btn2_Cryptographic_tag_label->y());//btn2_Password_input->setStyleSheet("background-color:pick;");     //设置背景颜色,否则看不见btn2_Password_input->setAlignment(Qt::AlignCenter);        //设置对齐方式btn2_Password_input->setPlaceholderText("请输入密码");      //设置占位文本btn2_Password_input->setEchoMode(QLineEdit::Password);      //设置密文//登录按钮btn1_yes = new QPushButton("确认",this);  //有参构造并设置父组件及填充文本btn1_yes->resize(50,35);        //设置按键的宽和高btn1_yes->move(btn2_Cryptographic_tag_label->x()+btn2_Cryptographic_tag_label->x(),btn2_Cryptographic_tag_label->y()+200);//取消按钮btn2_no = new QPushButton("取消",this);  //有参构造并设置父组件及填充文本btn2_no->resize(50,35);        //设置按键的宽和高btn2_no->move(btn1_yes->x()+100,btn1_yes->y());//连接登录按钮QObject::connect(this->btn1_yes,&QPushButton::clicked(,this,&Mainlogin::btn1_yes_slot));//连接取消按钮
}myjob::~myjob()
{
}

 测试文件

#include "myjob.h"#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);myjob w;w.show();return a.exec();
}

2> 思维导图

3>两篇刷题28/30 

 

相关文章:

qt部分核心机制

作业 1> 手动将登录项目实现&#xff0c;不要使用拖拽编程 并且&#xff0c;当点击登录按钮时&#xff0c;后台会判断账号和密码是否相等&#xff0c;如果相等给出登录成功的提示&#xff0c;并且关闭当前界面&#xff0c;发射一个跳转信号&#xff0c;如果登录失败&#…...

【RocketMQ】RocketMq之ConsumeQueue深入研究

目录 一&#xff1a;RocketMq 整体文件存储介绍 二&#xff1a;ConsumeQueue 的文件结构 三&#xff1a;ConsumeQueue 写入和查询流程 一&#xff1a;RocketMq 整体文件存储介绍 存储⽂件主要分为三个部分&#xff1a; CommitLog&#xff1a;存储消息的元数据。所有消息都会…...

如今物联网的快速发展对hmi的更新有哪些积极影响

一、功能更加丰富 物联网的快速发展使得 HMI&#xff08;人机界面&#xff09;能够连接更多的设备和系统&#xff0c;从而实现更加丰富的功能。例如&#xff0c;通过与传感器网络的连接&#xff0c;HMI 可以实时显示设备的运行状态、环境参数等信息&#xff0c;为用户提供更加…...

linux 性能60秒分析

linux 60秒分析 需要运行的工具是 1、uptime 2、dmesg | tail 3、vmstat 1 4、mpstat -P ALL 1 5、pidstat 1 6、iostat -xz 1 7、free -m 8、sar -n DEV 1 9、sar -n TCP,ETCP 1 10、topuptime 快速检查平均负载 [rootaaaaaa ~]# uptime15:17:20 up 3 days, 14 min, 7 us…...

Redisson全面解析:从使用方法到工作原理的深度探索

文章目录 写在文章开头详解Redisson基本数据类型基础配置字符串操作列表操作映射集阻塞队列延迟队列更多关于Redisson详解Redisson 中的原子类详解redisson中的发布订阅模型小结参考写在文章开头 Redisson是基于原生redis操作指令上进一步的封装,屏蔽了redis数据结构的实现细…...

neo4j-解决导入数据后出现:Database ‘xxxx‘ is unavailable. Run :sysinfo for more info.

目录 问题描述 解决方法 重新导入 问题描述 最近在linux上部署了neo4j&#xff0c;参照之前写的博客:neo4j-数据的导出和导入_neo4j数据导入导出-CSDN博客 进行了数据导出、导入操作。但是在进行导入后&#xff0c;重新登录网页版neo4j&#xff0c;发现对应的数据库状态变…...

51单片机之引脚图(详解)

8051单片机引脚分类与功能笔记 1. 电源引脚 VCC&#xff08;第40脚&#xff09;&#xff1a;接入5V电源&#xff0c;为单片机提供工作电压。GND&#xff08;第20脚&#xff09;&#xff1a;接地端&#xff0c;确保电路的电位参考点。 2.时钟引脚 XTAL1&#xff08;第19脚&a…...

Hangfire.NET:.NET任务调度

引言&#xff1a;为何选择 Hangfire&#xff1f; 在开发.NET 应用程序时&#xff0c;我们常常会遇到这样的场景&#xff1a;应用程序需要定期发送报告&#xff0c;像财务报表&#xff0c;每日业务数据汇总报告等&#xff0c;这些报告需要定时生成并发送给相关人员&#xff1b;…...

深入解析:React 事件处理的秘密与高效实践

在 React 中&#xff0c;事件处理是构建交互式应用的核心。本文将带你深入探索 React 事件处理的机制、最佳实践以及如何避免常见陷阱&#xff0c;助你写出更高效、更健壮的代码。 1. React 事件处理的独特之处 合成事件&#xff08;SyntheticEvent&#xff09; React 使用合…...

开源像素字体,可用于独立游戏开发

方舟像素字体 / Ark Pixel Font 开源的泛中日韩像素字体&#xff0c;使用 SIL 开放字体许可证 第1.1版&#xff08;SIL Open Font License 1.1&#xff09;授权。 支持 10、12 和 16 像素尺寸。 支持语言特殊字形&#xff1a;中文-中国大陆、中文-香港特别行政区、中文-台湾…...

【论文阅读】Comment on the Security of “VOSA“

Comment on the Security of Verifiable and Oblivious Secure Aggregation for Privacy-Preserving Federated Learning -- 关于隐私保护联邦中可验证与遗忘的安全聚合的安全性 论文来源摘要Introduction回顾 VOSA 方案对VOSA不可伪造性的攻击对于类型 I 的攻击对于类型 II 的…...

了解传输层TCP协议

目录 一、TCP协议段格式 二、TCP原理 1.确认应答 2.超时重传 3.连接管理 建立连接 断开连接 4.滑动窗口 5.流量控制 6.拥塞控制 7.延时应答 8.捎带应答 9.面向字节流 10.TCP异常情况 TCP&#xff0c;即Transmission Control Protocol&#xff0c;传输控制协议。人如…...

flask实现用户名查重,重复的用户名阻止注册,以及如何优化

在 Flask 中实现用户名查重&#xff0c;并阻止重复的用户名进行注册&#xff0c;可以使用数据库&#xff08;如 SQLite、MySQL、PostgreSQL&#xff09;存储用户信息&#xff0c;并在注册时检查用户名是否已存在。以下是实现步骤&#xff1a; 1. 安装 Flask 及 SQLAlchemy 确保…...

ASP.NET Core对JWT的封装

目录 JWT封装 [Authorize]的注意事项 JWT封装 NuGet 库 |Microsoft.AspNetCore.Authentication.JwtBearer 9.0.1https://www.nuget.org/packages/Microsoft.AspNetCore.Authentication.JwtBearerhttps://www.nuget.org/packages/Microsoft.AspNetCore.Authentication.JwtBea…...

wordpressAI工具,已接入Deepseek 支持自动生成文章、生成图片、生成长尾关键词、前端AI窗口互动、批量采集等

基于关键词或现有内容生成SEO优化的文章&#xff0c;支持多种AI服务&#xff08;如OpenAI、百度文心一言、智谱AI等&#xff09;&#xff0c;并提供定时任务、内容采集、关键词生成等功能。 核心功能 文章生成 关键词生成&#xff1a;根据输入的关键词生成高质量文章。 内容…...

Ollama部署 DeepSeek-R1:70B 模型的详细步骤

1. 确认环境准备 (1) 硬件要求 显存需求&#xff1a;70B 参数的模型需要大量显存。若使用 NVIDIA T4&#xff08;16GB 显存&#xff09;&#xff0c;需多卡并行&#xff08;如 8 卡&#xff09;或开启量化&#xff08;如 q4_0、q8_0&#xff09;。内存需求&#xff1a;建议至…...

PAT乙级( 1009 说反话 1010 一元多项式求导)C语言版本超详细解析

1009 说反话 给定一句英语&#xff0c;要求你编写程序&#xff0c;将句中所有单词的顺序颠倒输出。 输入格式&#xff1a; 测试输入包含一个测试用例&#xff0c;在一行内给出总长度不超过 80的字符串。字符串由若干单词和若干空格组成&#xff0c;其中单词是由英文字母&#x…...

学习笔记十九:K8S生成pod过程

K8S生成pod过程 流程图具体生成过程用户提交 Pod 定义API Server 处理请求调度器分配节点&#xff08;Scheduling&#xff09;目标节点上的 Pod 创建网络配置状态上报与监控控制器管理&#xff08;Controller Manager&#xff09;就绪与服务发现 关键错误场景高级特性 流程图 具…...

Qwen2-VL:增强视觉语言模型对世界任意分辨率的感知能力

1、摘要 Qwen2-VL系列是Qwen-VL模型的高级升级版本&#xff0c;它重新定义了传统视觉处理中预设分辨率的方法。Qwen2-VL引入了Naive Dynamic Resolution机制&#xff0c;使模型能够动态处理不同分辨率的图像&#xff0c;并将其转换为不同数量的视觉标记。这种机制使模型能够生…...

原神新版本角色牌上新 七圣召唤增添新玩法

在原神这款游戏中&#xff0c;5.4版本更新后七圣召唤玩法将新增2张角色牌和对应天赋牌、3张行动牌&#xff0c;并进行部分卡牌平衡调整&#xff0c;今天就给大家介绍一下。 一、角色牌【基尼奇】 1.元素战技&#xff1a;选一个我方角色&#xff0c;自身附属钩索链接并进入夜魂…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端

&#x1f31f; 什么是 MCP&#xff1f; 模型控制协议 (MCP) 是一种创新的协议&#xff0c;旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议&#xff0c;它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

对WWDC 2025 Keynote 内容的预测

借助我们以往对苹果公司发展路径的深入研究经验&#xff0c;以及大语言模型的分析能力&#xff0c;我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际&#xff0c;我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测&#xff0c;聊作存档。等到明…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理

引言 Bitmap&#xff08;位图&#xff09;是Android应用内存占用的“头号杀手”。一张1080P&#xff08;1920x1080&#xff09;的图片以ARGB_8888格式加载时&#xff0c;内存占用高达8MB&#xff08;192010804字节&#xff09;。据统计&#xff0c;超过60%的应用OOM崩溃与Bitm…...

鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南

1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;使用DevEco Studio作为开发工具&#xff0c;采用Java语言实现&#xff0c;包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...

AI病理诊断七剑下天山,医疗未来触手可及

一、病理诊断困局&#xff1a;刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断"&#xff0c;医生需通过显微镜观察组织切片&#xff0c;在细胞迷宫中捕捉癌变信号。某省病理质控报告显示&#xff0c;基层医院误诊率达12%-15%&#xff0c;专家会诊…...

uniapp 小程序 学习(一)

利用Hbuilder 创建项目 运行到内置浏览器看效果 下载微信小程序 安装到Hbuilder 下载地址 &#xff1a;开发者工具默认安装 设置服务端口号 在Hbuilder中设置微信小程序 配置 找到运行设置&#xff0c;将微信开发者工具放入到Hbuilder中&#xff0c; 打开后出现 如下 bug 解…...

Vue 模板语句的数据来源

&#x1f9e9; Vue 模板语句的数据来源&#xff1a;全方位解析 Vue 模板&#xff08;<template> 部分&#xff09;中的表达式、指令绑定&#xff08;如 v-bind, v-on&#xff09;和插值&#xff08;{{ }}&#xff09;都在一个特定的作用域内求值。这个作用域由当前 组件…...

热烈祝贺埃文科技正式加入可信数据空间发展联盟

2025年4月29日&#xff0c;在福州举办的第八届数字中国建设峰会“可信数据空间分论坛”上&#xff0c;可信数据空间发展联盟正式宣告成立。国家数据局党组书记、局长刘烈宏出席并致辞&#xff0c;强调该联盟是推进全国一体化数据市场建设的关键抓手。 郑州埃文科技有限公司&am…...

6️⃣Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙

Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙 一、前言:离区块链还有多远? 区块链听起来可能遥不可及,似乎是只有密码学专家和资深工程师才能涉足的领域。但事实上,构建一个区块链的核心并不复杂,尤其当你已经掌握了一门系统编程语言,比如 Go。 要真正理解区…...