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

【QT】Day 2

1> 继续完善登录框,当登录成功时,关闭登录界面,跳转到新的界面中

second.h
#ifndef SECOND_H
#define SECOND_H#include <QWidget>namespace Ui {
class second;
}class second : public QWidget
{Q_OBJECTpublic:explicit second(QWidget *parent = nullptr);~second();public slots:void loginjump_slot();private:Ui::second *ui;
};#endif // SECOND_H

widget.h

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include <QDebug>       //信息调试类,用于打印输出的
#include <QIcon>        //图标头文件
#include <QPushButton>  //按钮类头文件
#include <QLineEdit>    //行编辑器类
#include <QLabel>QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent = nullptr);~Widget();public slots:   //在该函数下要定义公共槽函数
//    void loginbtn_slot();  //自定义处理"登录"按钮发射信号的槽函数申明void cancebtn_slot();  //自定义处理"取消"按钮发射信号的槽函数申明signals:void loginjump();private slots:void on_loginBtn_clicked();private:Ui::Widget *ui;
};
#endif // WIDGET_H

 main.cpp

#include "widget.h"
#include "second.h"#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);Widget w;w.show();second s;   //实例化第2个界面QObject::connect(&w,&Widget::loginjump,&s,&second::loginjump_slot);  //连接2个界面的信号与槽return a.exec();
}

 second.cpp

#include "second.h"
#include "ui_second.h"second::second(QWidget *parent) :QWidget(parent),ui(new Ui::second)
{ui->setupUi(this);//设置logo图ui->hqyj->setPixmap(QPixmap(":/icon/logo.png"));     //logoui->hqyj->setScaledContents(true);  //设置内容自适应
}second::~second()
{delete ui;
}void second::loginjump_slot()
{this->show();
}

 widget.cpp

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//1.界面的配置this->setFixedSize(480,400);    //设置固定尺寸this->setWindowTitle("鹏哥快聊"); //窗口标题this->setWindowIcon(QIcon(":/icon/wodepeizhenshi.png"));   //设置窗口图标this->setWindowOpacity(1);     //设置透明度//设置logo图ui->logoLab->setPixmap(QPixmap(":/icon/logo.png"));     //logoui->logoLab->setScaledContents(true);  //设置内容自适应//2、设置账号和密码-标签ui->userNameLab->resize(30,30);ui->userNameLab->setPixmap(QPixmap(":/icon/userName.jpg"));ui->userNameLab->setScaledContents(true);  //设置内容自适ui->pwdLab->resize(30,30);ui->pwdLab->setPixmap(QPixmap(":/icon/passwd.jpg"));ui->pwdLab->setScaledContents(true);  //设置内容自适应//3、设置账号和密码-输入框ui->userNameEdit->setPlaceholderText("QQ号码/手机/邮箱");ui->pwdEdit->setEchoMode(QLineEdit::Password);   //设置密文模式ui->pwdEdit->setPlaceholderText("密码");          //设置占位符//4、设置登录和取消图标ui->loginBtn-> setIcon(QIcon(":/icon/login.png"));//设置按钮图标ui->cancelBtn-> setIcon(QIcon(":/icon/cancel.png"));//设置按钮图标//手动将按钮3的clicked信号与自定义的槽函数进行连接connect(ui->cancelBtn, SIGNAL(clicked()), this, SLOT(cancebtn_slot()));
}Widget::~Widget()
{delete ui;
}//自定义槽函数,关于"取消"按钮对应槽函数的实现
void Widget::cancebtn_slot()
{this->close();
}void Widget::on_loginBtn_clicked()
{if((ui->userNameEdit->text() == "admin") && (ui->pwdEdit->text()=="123456"))    //获取用户名和密码{qDebug() << "登录成功";emit loginjump();    //发射跳转信号this->close();  //关闭自身界面}else{qDebug() << "登录失败";ui->pwdEdit->clear();   //清空密码框内容}
}

2> 新建一个工程文件,将默认提供的代码加上注释信息

工程管理文件:

 头文件

主函数

 源文件

 

 

3. 思维导图

 

 

相关文章:

【QT】Day 2

1> 继续完善登录框&#xff0c;当登录成功时&#xff0c;关闭登录界面&#xff0c;跳转到新的界面中 second.h #ifndef SECOND_H #define SECOND_H#include <QWidget>namespace Ui { class second; }class second : public QWidget {Q_OBJECTpublic:explicit second…...

腾讯云 Cloud Studio 实战训练营活动招募中

点击链接了解详情...

前端常用UI框架

前言&#xff1a; 作为一个前端码农&#xff0c;不仅要熟练使用原生技术&#xff0c;现在更需要掌握的是技术框架和ui框架&#xff0c;因为框架可以帮助我们快速的开发项目&#xff0c;并且能够保证界面的兼容和美观&#xff0c;下面是一些常用的前端ui框架&#xff0c;供大家参…...

创建自己的docker python容器环境;支持新增python包并更新容器;离线打包、加载image

1、创建自己的docker python容器环境 参考&#xff1a;https://blog.csdn.net/weixin_42357472/article/details/118991485 首先写Dockfile&#xff0c;注意不要有txt等后缀 Dockfile # 使用 Python 3.9 镜像作为基础 FROM python:3.9# 设置工作目录 WORKDIR /app# 复制当前…...

什么是Apache Kafka?

Apache Kafka是一个开源的分布式事件流平台&#xff0c;用于高性能、可扩展和持久化的数据传输。它最初由LinkedIn公司开发&#xff0c;并于2011年贡献给Apache软件基金会&#xff0c;成为一个顶级开源项目。 Kafka的设计目标是提供一种可靠、高吞吐量的消息传递系统&#xff…...

Langchain 的 Routerchain

Langchain 的 Routerchain 1. destination_chains2. LLMRouterChain3. EmbeddingRouterChain 本笔记本演示了如何使用 RouterChain 范例创建一个链&#xff0c;该链动态选择用于给定输入的下一个链。 路由器链由两个组件组成&#xff1a; RouterChain 本身&#xff08;负责选…...

Springboot - druid 数据库密码加密

yml配置 jasypt:encryptor:password: U3buwRJdQ2023algorithm: PBEWithMD5AndDES # 数据源配置 spring:datasource:type: com.alibaba.druid.pool.DruidDataSourcedriverClassName: com.mysql.cj.jdbc.Driverdruid:# 主库数据源master:url: yourUrlusername: yourUsernamepass…...

Python中运行取消Python console模式

在Python里run的时候突然会发现&#xff0c;进入的不是run模式&#xff0c;而是console模式&#xff0c;这种运行模式能保留你每次的运行历史&#xff0c;因为会重开一个运行小页面&#xff0c;关闭操作如下&#xff1a;...

macOS Monterey 12.6.8 (21G725) 正式版发布,ISO、IPSW、PKG 下载

macOS Monterey 12.6.8 (21G725) 正式版发布&#xff0c;ISO、IPSW、PKG 下载 本站下载的 macOS 软件包&#xff0c;既可以拖拽到 Applications&#xff08;应用程序&#xff09;下直接安装&#xff0c;也可以制作启动 U 盘安装&#xff0c;或者在虚拟机中启动安装。另外也支持…...

计科web常见错误排错【HTTP状态404、导航栏无法点开、字符乱码及前后端数据传输呈现、jsp填写的数据传到数据库显示null、HTTP状态500】

web排错记录 在使用javaweb的过程中会出现的一些错误请在下方目录查找。 目录 错误1&#xff1a;HTTP状态404——未找到 错误2&#xff1a;导航栏下拉菜单无法点开的问题 错误3&#xff1a;字符乱码问题 错误4&#xff1a;jsp网页全部都是&#xff1f;&#xff1f;&#x…...

仿VScode MDK背景配色方案

效果如果所示 操作方法&#xff1a;备份后修改~/UV4文件夹下的global.prop&#xff0c;用以下的代码代替。 # properties for all file types indent.automatic1 virtual.space0 view.whitespace0 view.endofline0 code.page936 caretline.visible1 highlight.matchingbraces1…...

AutoSAR系列讲解(实践篇)9.5-通信的数据映射

本节很简单,但是很重要,是配置中必不可少的一个部分。因此单独列了这么一节出来 Data Mapping概述 在Davinci Cfg中,数据是不能直接放在IPDU上的,必须要映射到相应的Signals上才行。Signals一般是由通信矩阵定义的,但是通信矩阵并不知道程序中究竟用的是哪个数据进行传输…...

janus-Gateway的服务端部署

janus-Gateway 需求是前后端的webRTC推拉流&#xff0c;但是后端用的是c&#xff0c;于是使用了这个库做视频流的推送和拉取&#xff0c;记录踩坑过程。 如果你也需要自己部署janus的服务端并在前端拉流测试&#xff0c;希望对你有所帮助。 由于janus的服务器搭建需要linux环境…...

力扣简单1道_两数之和

两数之和 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不能重复出现。你可以按任意顺序…...

从vue3速学react

单位老项目vue2,新项目vue3,业务已经熟练使用vue了&#xff0c;空余时间自学下react&#xff0c;写个博客记录下 react没有双向绑定&#xff0c;用的是jsx语法&#xff0c;useState后面是初始化值&#xff0c;需要改变data的时候&#xff0c;需要用定义的setXXX来改变XXX值&am…...

Kotlin 协程 CoroutineScope

协程定义&#xff1a; 19年官方是这样说的&#xff1a;协程是轻量级的线程&#xff0c;协程就是 Kotlin 提供的一套线程封装的 API&#xff1b; 现在官方是这样说的&#xff1a;协程是一种并发设计模式&#xff1b; 协程作用&#xff1a; 1.处理耗时任务&#xff1b; 2.保…...

如何构建适合自己的DevOps软件测试改进方案

​目录 DevOps成熟度模型分析 构建适合企业自身性能的测试过程改进框架 资料获取方法 根据2022年的DevOps全球调查报告显示&#xff0c;主流软件企业采用或部分采用DevOps且已获得良好成效的占比已达70%&#xff0c;DevOps俨然成为当下软件开发研究的重要方向。 测试作为软…...

PHP关于字符串的各类处理方法

判断字符串是否以指定子串开头或结尾 function startsWith($str, $prefix) {return stripos($str, $prefix) 0; }function endsWith($str, $suffix) {return substr_compare($str, $suffix, -strlen($suffix)) 0; }// 示例用法 $text "hello world"; $result st…...

Springboot+MyBatis使用

目录 依赖 配置信息 xml文件 mapper接口 打印日志 分页查询 依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId> </dependency><dependency><groupId>my…...

WebSocketServer的使用(@ServerEndpoint)

前端代码 function initWebSocket() {if (typeof WebSocket "undefined") {console.log("您的浏览器不支持WebSocket");} else {console.log("您的浏览器支持WebSocket");//实现化WebSocket对象&#xff0c;指定要连接的服务器地址与端口 建立连…...

椭圆曲线密码学(ECC)

一、ECC算法概述 椭圆曲线密码学&#xff08;Elliptic Curve Cryptography&#xff09;是基于椭圆曲线数学理论的公钥密码系统&#xff0c;由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA&#xff0c;ECC在相同安全强度下密钥更短&#xff08;256位ECC ≈ 3072位RSA…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块&#xff0c;它提供了一个轻量级的 HTTP 服务器实现&#xff0c;主要用于构建基于 HTTP 的应用程序和服务。 功能介绍&#xff1a; 主要功能 HTTP服务器功能&#xff1a; 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

GitHub 趋势日报 (2025年06月08日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)

UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中&#xff0c;UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化&#xf…...

蓝桥杯 冶炼金属

原题目链接 &#x1f527; 冶炼金属转换率推测题解 &#x1f4dc; 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V&#xff0c;是一个正整数&#xff0c;表示每 V V V 个普通金属 O O O 可以冶炼出 …...

Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析

Java求职者面试指南&#xff1a;Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问&#xff08;基础概念问题&#xff09; 1. 请解释Spring框架的核心容器是什么&#xff1f;它在Spring中起到什么作用&#xff1f; Spring框架的核心容器是IoC容器&#…...

JS设计模式(4):观察者模式

JS设计模式(4):观察者模式 一、引入 在开发中&#xff0c;我们经常会遇到这样的场景&#xff1a;一个对象的状态变化需要自动通知其他对象&#xff0c;比如&#xff1a; 电商平台中&#xff0c;商品库存变化时需要通知所有订阅该商品的用户&#xff1b;新闻网站中&#xff0…...

JS手写代码篇----使用Promise封装AJAX请求

15、使用Promise封装AJAX请求 promise就有reject和resolve了&#xff0c;就不必写成功和失败的回调函数了 const BASEURL ./手写ajax/test.jsonfunction promiseAjax() {return new Promise((resolve, reject) > {const xhr new XMLHttpRequest();xhr.open("get&quo…...

mac 安装homebrew (nvm 及git)

mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用&#xff1a; 方法一&#xff1a;使用 Homebrew 安装 Git&#xff08;推荐&#xff09; 步骤如下&#xff1a;打开终端&#xff08;Terminal.app&#xff09; 1.安装 Homebrew…...

elementUI点击浏览table所选行数据查看文档

项目场景&#xff1a; table按照要求特定的数据变成按钮可以点击 解决方案&#xff1a; <el-table-columnprop"mlname"label"名称"align"center"width"180"><template slot-scope"scope"><el-buttonv-if&qu…...