20230831-完成登录框的按钮操作,并在登录成功后进行界面跳转
登录框的按钮操作,并在登录成功后进行界面跳转
app.cpp
#include "app.h"
#include <cstdio>
#include <QDebug>
#include <QLineEdit>
#include <QLabel>
#include <QPainter>
#include <QString>
#include <QMessageBox>
#include <QRegExp>APP::APP(QWidget *parent) : QWidget(parent)
{//================构建窗口setWindowTitle==============================//this->setWindowTitle("阿巴阿巴");this->setWindowIcon(QIcon("C:/Users/BlackMC/Desktop/icon/wodepeizhenshi.png"));this->resize(430,327);//this->setStyleSheet("background-color:pink");//设定窗口透明度this->setWindowOpacity(1.5);//================构建画面===========================================//bel3 = new QLabel("",this);bel3->resize(430,148);//bel3->setPixmap(QPixmap("G:/steam/steamapps/workshop/content/431960/2949578938/preview.jpg"));bel3->setPixmap(QPixmap("C:/Users/BlackMC/Desktop/icon/p3.jpg"));bel3->setScaledContents(true);//图片自适应//================构建标签账户(Lable)================================//bel1 = new QLabel("账户",this);bel1->resize(35,35);bel1->setPixmap(QPixmap("C:/Users/BlackMC/Desktop/icon/userName.jpg"));bel1->setScaledContents(true);bel1->move(120,163);//================构建标签密码(Lable)================================//bel2 = new QLabel("密码",this);bel2->resize(35,35);bel2->setPixmap(QPixmap("C:/Users/BlackMC/Desktop/icon/passwd.jpg"));bel2->setScaledContents(true);bel2->move(118,220);//================构建输入框账户(Lable)==============================//edit1 = new QLineEdit(this);edit1->setStyleSheet("background-color:cyan");edit1->setPlaceholderText("QQ密码/手机/邮箱");edit1->resize(150,32);edit1->move(bel1->x()+55,163);//================构建输入框密码(Lable)==============================//edit2 = new QLineEdit(this);edit2->setStyleSheet("background-color:cyan");edit2->resize(150,32);edit2->move(bel2->x()+55,220);edit2->setPlaceholderText("密码");edit2->setEchoMode(QLineEdit :: Password);//================构建按钮登录(QPushButton)=========================//but1 = new QPushButton("登录",this);but1->setStyleSheet("background-color:orange");but1->resize(70,30);but1->move(195,280);but1->setIcon(QIcon("C:/Users/BlackMC/Desktop/icon/login.png"));//================构建按钮取消(QPushButton)=========================//but2 = new QPushButton("取消",this);but2->setStyleSheet("background-color:orange");but2->resize(but1->size());but2->move(but1->x()+90,280);but2->setIcon(QIcon("C:/Users/BlackMC/Desktop/icon/cancel.png"));//================构建按钮登录控件==================================//connect(but1,&QPushButton::clicked,this,&APP::on_111_clicked);//================使用qt4版本的链接,将按钮发射的pressed信号与按钮槽链接=////================构建按钮取消控件==================================//connect(but2,SIGNAL(pressed()),but1,SLOT(close()));}APP::~APP()
{
}//按钮登录的槽函数——1
void APP::on_111_clicked()
{int result1 = QString::compare("tjq", edit1->text(), Qt::CaseInsensitive);int result2 = QString::compare("123456", edit2->text(), Qt::CaseInsensitive);if(result1 == 0 && result2 == 0) //登录成功!{int ret = QMessageBox::warning(this, QStringLiteral("Good"), QStringLiteral("登录成功!"), QMessageBox::Cancel | QMessageBox::Ok);if( ret == QMessageBox::Ok){emit jump();this->close();//connect(but1,&QPushButton::released,this,&APP::on_jumpsecond);//connect(QMessageBox::Ok,SIGNAL(QMessageBox::Ok),this,SLOT(&APP::on_jumpsecond));}}else //登录失败!{QMessageBox::warning(this, QStringLiteral("Error!"), QStringLiteral("登录失败!"), QMessageBox::Cancel | QMessageBox::Ok);edit2->clear();}}
//按钮登录的槽函数——2
/*void APP::on_jumpsecond()
app.h
#include <QDebug>
#include <QLineEdit>
#include <QLabel>
#include <QPainter>
#include <cstdio>
#include <QString>
#include <QMessageBox>
#include <QRegExp>class APP : public QWidget
{Q_OBJECTsignals:void my_signal();//信号函数void jump();//信号函数
public slots://自定义的槽函数列(只有槽函数才作用与connect的槽函数参数)void on_111_clicked();//登录按钮触发-槽函数//void on_jumpsecond();//界面跳转触发-槽函数public:APP(QWidget *parent = nullptr);~APP();
private:QLabel *bel1;QLabel *bel2;QLabel *bel3;QLineEdit *edit1;QLineEdit *edit2;QPushButton *but1;QPushButton *but2;
};
#endif // APP_H
second.cpp
#include "second.h"
#include "ui_second.h"Second::Second(QWidget *parent):QWidget(parent),ui(new Ui::Second)
{//================构建窗口setWindowTitle==============================//this->setWindowTitle("QQ界面");this->setStyleSheet("background-color:pink");//this->setWindowIcon(QIcon("C:/Users/BlackMC/Desktop/icon/wodepeizhenshi.png"));this->resize(820,327);//设定窗口透明度this->setWindowOpacity(2.0);//===========================================================//ui->setupUi(this);
}Second::~Second()
{delete ui;
}void Second::jump_second()
{this->show();
}
second.h
#ifndef SECOND_H
#define SECOND_H#include <QWidget>namespace Ui {
class Second;
}class Second : public QWidget
{Q_OBJECTpublic slots: //槽函数void jump_second();public:explicit Second(QWidget *parent = nullptr);~Second();private:Ui::Second *ui;
};#endif // SECOND_H
main.cpp
#include "app.h"
#include "second.h"#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);APP w;w.show();Second f;QObject::connect(&w,&APP::jump,&f,&Second::jump_second);return a.exec();
}
Xmain
相关文章:
20230831-完成登录框的按钮操作,并在登录成功后进行界面跳转
登录框的按钮操作,并在登录成功后进行界面跳转 app.cpp #include "app.h" #include <cstdio> #include <QDebug> #include <QLineEdit> #include <QLabel> #include <QPainter> #include <QString> #include <Q…...
039 - sql逻辑操作符
前提: 做两个表employee和movie,用来练习使用; 表一:employee -- 创建表employee CREATE TABLE IF NOT EXISTS employee(id INT NOT NULL AUTO_INCREMENT,first_name VARCHAR(100) NOT NULL,last_name VARCHAR(100) NOT NULL,t…...
DbLInk使用
DbLInk介绍 DbLink是一种数据库连接技术,在不同的数据库之间进行数据传输和共享。它提供了一种透明的方法,让一个数据库访问另一个数据库的数据。 DbLink的优点是可以在多个数据库间实现数据共享,并且为不同数据库间的数据访问提供了便捷的…...
2.3 Vector 动态数组(迭代器)
C数据结构与算法 目录 本文前驱课程 1 C自学精简教程 目录(必读) 2 Vector<T> 动态数组(模板语法) 本文目标 1 熟悉迭代器设计模式; 2 实现数组的迭代器; 3 基于迭代器的容器遍历; 迭代器语法介绍 对迭…...
【ES6】Proxy的高级用法,实现一个生成各种 DOM 节点的通用函数dom
下面的例子则是利用get拦截,实现一个生成各种 DOM 节点的通用函数dom。 <body> </body><script>const dom new Proxy({}, {get(target, property) {return function(attrs {}, ...children) {const el document.createElement(property);for …...
气象站是什么设备?功能是什么?
气象站是一种用于测量和记录气象数据的设备。它通常是由各种传感器及其数据传输设备、固定设备和供电设备组成,可以测量风速、风向、温度、湿度、气压、降水量等气象要素,并将这些数据记录下来,以便进一步分析和研究。 气象站通常设置在广阔…...
227. 基本计算器 II Python
文章目录 一、题目描述示例 1示例 2示例 3 二、代码三、解题思路 一、题目描述 给你一个字符串表达式 s ,请你实现一个基本计算器来计算并返回它的值。 整数除法仅保留整数部分。 你可以假设给定的表达式总是有效的。所有中间结果将在 [-2^31, 2^31 - 1]的范围内…...
python中字典常用函数
字典常用函数 cmp(dict1,dict2) (已删除,直接用>,<,即可) 如果两个字典的元素相同返回0,如果字典dict1大于字典dict2返回1,如果字典dict1小于字典dict2返回-1。 先比较字典的长度,然后比较键&#x…...
leetcode88合并两个有序数组
题目: 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。 注意:最终&…...
Ceph入门到精通-Nginx 大量请求 延迟优化
优化nginx以处理大量请求并减少延迟可以通过以下几种方法实现: 调整worker_processes和worker_connections参数:增加worker_processes值可以增加nginx的进程数量,提高并发处理能力。增加worker_connections参数的值可以增加每个worker进程可…...
Vulnstack----5、ATTCK红队评估实战靶场五
文章目录 一 环境搭建二 外网渗透三 内网信息收集3.1 本机信息收集3.2 域内信息收集 四 横向移动4.1 路由转发和代理通道4.2 抓取域用户密码4.3 使用Psexec登录域控4.4 3389远程登录 五、痕迹清理 一 环境搭建 1、项目地址 http://vulnstack.qiyuanxuetang.net/vuln/detail/7/ …...
QT 5.8
QT与Qt Creator,前者是框架,类似与MFC,而后者是QT的编译器,也可以使用Visual studio编辑,编译需要其他的 Index of /new_archive/qt/5.8/5.8.0...
AIGC+思维导图:提升你的学习与工作效率的「神器」
目录 一、产品简介 二、功能介绍 2.1 AI一句话生成思维导图 2.2百万模版免费用 2.3分屏视图,一屏读写 2.4团队空间,多人协作 2.5 云端跨平台化 2.6 免费够用,会员功能更强大 2.7 支持多种格式的导入导出 三、使用教程 3.1 使用AI…...
javaScript:DOM元素的获取(静态/动态获取)
目录 一.dom元素获取的意义与使用场景 使用场景(绝大多数js操作都需要dom操作) 总结/疑问解答! 二.DOM元素获取的常用方法(重点) 获取dom元素(动态) document.gerElementbyId() docume…...
数据结构前言
一、什么是数据结构? 数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。 上面是百度百科的定义,通俗的来讲数据结构就是数据元素集合与数据元素集合或者数据元素与数据元素之间的组成形式。 举个…...
Docker基于alpine带glibc的小型容器image
由于程序是C写的,gc编译,找了几个容器,生成比较小的是debianslim和ubuntu,生成后的大小分别为88MB,和91MB,还是太大了,于是想起一些小型容器如busybox或者alpine自己装glibc,但是试了…...
Nginx教程
Nginx教程 01-Nginx简介02-windows安装Nginx03-Nginx目录结构04-Linux安装Nginx05-linux下源码安装nginx06-linux下nginx配置07-在docker中安装nginx08-源码安装和yum安装的区别09-Nginx运行组和运行用户10-卸载nginx11-nginx的基本原理和架构12-nginx是如何处理请求的13-nginx…...
直播预约|哪吒汽车岳文强:OEM和Tier1如何有效对接网络安全需求
信息安全是一个防护市场。如果数字化程度低,数据量不够,对外接口少,攻击成本高,所获利益少,自然就没有什么攻击,车厂因此也不需要在防护上花费太多成本。所以此前尽管说得热闹,但并没有太多真实…...
hiveserver2经常挂断的原因
hiveserver2经常挂断的原因 HiveServer2 经常挂断可能有多种原因,以下是一些可能导致挂断的常见原因: 资源不足:HiveServer2 需要足够的内存和 CPU 资源来处理查询请求。如果资源不足,可能会导致 HiveServer2 挂断。请确保在配置…...
openeuler 23.03 安装mysql 8.X
遇到一堆问题:直接从mysql官下载,都不行。下列是失败的: mysql80-community-release-el8-1.noarch.rpm mysql-8.0.34-1.el8.x86_64.rpm-bundle.tar mysql-8.1.0-1.el9.x86_64.rpm-bundle.tar 后来想从openeuler下载应该靠谱:ht…...
网络安全—0基础学习笔记(黑客)
一、前言 1.这是一条坚持的道路,三分钟的热情可以放弃往下看了. 2.多练多想,不要离开了教程什么都不会了.最好看完教程自己独立完成技术方面的开发. 3.有时多 google,baidu,我们往往都遇不到好心的大神,谁会无聊天天给你做解答. 4.遇到实在搞不懂的,可以先放放,以后再来解决. …...
react HashRouter 与 BrowserRouter 的区别及使用场景
一、简介 在单页面应用中,如何在切换页面后,不刷新浏览器呢?为了解决这个问题,有两种方法,就是hash路由模式、history路由模式,而 react router 的两种路由就是使用这两种路由模式。 二、区别 HashRouter…...
痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU硬件那些事(2.3)- 串行NOR Flash下载算法(J-Link工具篇)
https://www.cnblogs.com/henjay724/p/13770137.html 大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是J-Link工具下i.MXRT的串行NOR Flash下载算法设计。 在i.MXRT硬件那些事系列之《在串行NOR Flash XIP调试原理》一文中,痞…...
多目标应用:基于多目标向日葵优化算法(MOSFO)的微电网多目标优化调度MATLAB
一、微网系统运行优化模型 参考文献: [1]李兴莘,张靖,何宇,等.基于改进粒子群算法的微电网多目标优化调度[J].电力科学与工程, 2021, 37(3):7 二、多目标向日葵优化算法 多目标向日葵优化算法(Multi-objective sunflower optimization,MOS…...
智能安全科技,Vatee万腾为您服务
在智能科技的引领下,Vatee万腾将为您点亮投资之路,助您在金融市场中抓住机遇,实现财务目标。作为一家融合科技与投资的先锋平台,Vatee万腾致力于为投资者提供智能化的投资方案和支持。 Vatee万腾以其先进的智能科技为基础…...
Scala中的类型检查和转换,以及泛型,scala泛型的协变和逆变
Scala中的类型检查和转换,以及泛型 类型检查和转换 说明 (1) obj.isInstanceOf[T]:判断 obj 是不是T 类型。 (2) obj.asInstanceOf[T]:将 obj 强转成 T 类型。 (3) cla…...
【数据结构】C语言队列(详解)
前言: 💥🎈个人主页:Dream_Chaser~ 🎈💥 ✨✨专栏:http://t.csdn.cn/oXkBa ⛳⛳本篇内容:c语言数据结构--C语言实现队列 目录 一.队列概念及结构 1.1队列的概念 1.2队列的结构 二.队列的实现 2.1头文…...
【数据结构初阶】一. 复杂度讲解
相关代码gitee自取: C语言学习日记: 加油努力 (gitee.com) 接上期: 学C的第三十四天【程序环境和预处理】_高高的胖子的博客-CSDN博客 1 . 算法效率 (1). 什么是数据结构: 数据结构(Data Structure)是计算机存储、…...
Jmete+Grafana+Prometheus+Influxdb+Nginx+Docker架构搭建压测体系/监控体系/实时压测数据展示平台+遇到问题总结
背景 需要大批量压测时,单机发出的压力能力有限,需要多台jmeter来同时进行压测;发压机资源不够,被压测系统没到瓶颈之前,发压机难免先发生资源不足的情形;反复压测时候也需要在不同机器中启动压测脚本&…...
php提交表单将html相互字符转化的封装函数
在 PHP 中,您可以使用 htmlspecialchars() 函数将 HTML 字符转换为文本。该函数将把 <、>、" 和 等特殊字符转换为对应的 HTML 实体,从而避免跨站点脚本(XSS)攻击。 例如,如果您有一个表单输入字段的值&a…...
动画设计就业前景/seo快速排名源码
http://www.docin.com/p-443803801.html...
怎么在网站上做签到/郑州seo多少钱
电脑一直都很擅长视觉识别。有时它们识别一系列图像中某个个体的能力能够与人类相媲美。但相似的结果是否说明了电脑能够模拟人类的视觉系统呢?回答这个问题或许可能会发现电脑系统比不上人类的地方。 《美国科学院院刊》发表了一篇论文提到了电脑和人类视觉系统的不…...
页面做的好看的网站/企业管理培训
问题背景: easyui 需要显示行号的时候,我们只需要设置 rownumbers: true, 但是 不管是在哪一页,行号都是从1开始,不能连续 我们在分页的 onSelectPage 函数里去执行 如下: onSelectPage: function (pageNo, pageSi…...
廊坊网站建设企业/房地产市场现状分析
2.3.1 栈在括号匹配中的应用 #include <stdio.h> #include <stdlib.h> #include <stddef.h>#define true 1; #define false 0;#define MaxSize 50 typedef struct {char data[MaxSize];int top; } SqStack;// 1、初始化栈 // 2、判空操作 // 3、进栈 // 4、…...
网店平台网站建设需求/windows优化大师官方
http://docs.egret-labs.org/post/tools/native/hot-upgrade.html概述Egret的封装项目无论在Android还是iOS平台,均支持热更新。 以下主要以Android平台为例来说明,iOS平台只需要在相应的配置和iOS入口类代码中进行不同的修改配置即可。基本配置首先我们…...
广州做网站(信科网络)/百度小说排行榜2021
1. 题目 原题链接 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如,序列 {1,2,3,4,5} 是某栈 的压栈序列,序列 {4,5,3,2,1} 是该压栈序列对应的一个弹…...