QT DAY2

1.思维导图

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

Second.h

#ifndef SECOND_H
#define SECOND_H#include <QWidget>
#include <QtCore/QDebug>
#include <QIcon>
#include <QPushButton>
#include <QLineEdit>
#include <QLabel>
#include <QHBoxLayout>namespace Ui {
class Second;
}class Second : public QWidget
{Q_OBJECTpublic:explicit Second(QWidget *parent = nullptr);~Second();private slots:
//    void jump_slot();   //跳转对应槽函数public slots:void slot1();//void slot2();
private:Ui::Second *ui;
};#endif // SECOND_H

Widget.h

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include <QtCore/QDebug>
#include <QIcon>
#include <QPushButton>
#include <QLineEdit>
#include <QLabel>
#include <QHBoxLayout>QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTQLabel *lab1=new QLabel;QLabel *lab2=new QLabel;QLabel *lab3=new QLabel;QLineEdit *edit1=new QLineEdit;QLineEdit *edit2=new QLineEdit;QPushButton *btn1=new QPushButton;QPushButton *btn2=new QPushButton;
public:Widget(QWidget *parent = nullptr);~Widget();signals:void jump();   //跳转信号public slots:void on_jumpButton_clicked(); void my_slot();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;QObject::connect(&w,&Widget::jump,&s,&Second::slot1);//将跳转槽函数与信号连接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);qDebug()<<"second size="<<this->size();this->resize(350,300);qDebug()<<this->windowTitle();this->setWindowTitle("进门有惊喜");this->setWindowIcon(QIcon("C:\\Users\\Administrator\\Desktop\\icon\\logo.bmp"));// this->setScaledContents(true);this->setWindowOpacity(0.8);}Second::~Second()
{delete ui;
}void Second::slot1()
{this->show();
}

Widget.cpp

#include "widget.h"Widget::Widget(QWidget *parent): QWidget(parent){qDebug()<<this->size();qDebug()<<this->rect().size();qDebug()<<this->geometry().size();qDebug()<<this->frameGeometry().size();qDebug()<<"width:"<<this->width()<<"  height:"<<this->height();qDebug()<<"width:"<<this->size().width()<<"    height:"<<this->size().height();//设置固定窗口尺寸this->setFixedSize(500,400);//窗口标题qDebug()<<this->windowTitle();  //获取窗口标题this->setWindowTitle("牛马聚集地");//设置窗口图标this->setWindowIcon(QIcon("C:\\Users\\Administrator\\Desktop\\icon\\logo.bmp"));//设置透明度this->setWindowOpacity(0.8);//设置标签QLabel *lab1=new QLabel(this);lab1->resize(500,100);lab1->setAlignment(Qt::AlignCenter);  //垂直和水平全部居中lab1->setPixmap(QPixmap("C:\\Users\\Administrator\\Desktop\\icon\\2023725191221.bmp"));  //设置标签位图标lab1->setScaledContents(true);  //自适应QLabel *lab2=new QLabel(this);//账号图标lab2->resize(50,50);lab2->move(100,130);lab2->setPixmap(QPixmap("C:\\Users\\Administrator\\Desktop\\icon\\username.bmp"));  //设置标签位图标lab2->setScaledContents(true);  //自适应QLabel *lab3=new QLabel(this);  //密码图标lab3->resize(50,50);lab3->move(100,200);lab3->setPixmap(QPixmap("C:\\Users\\Administrator\\Desktop\\icon\\passwrd.bmp"));  //设置标签位图标lab3->setScaledContents(true);  //自适应QLineEdit *edit1=new QLineEdit;edit1->setParent(this);   //设置父组件edit1->resize(230,50);  //重新设置尺寸edit1->move(150,130);   //移动edit1->setPlaceholderText(":用户名/账号");  //设置占位符edit1->setStyleSheet("border:none;""border-bottom:2px solid black;");QLineEdit *edit2=new QLineEdit(this);//edit2->setParent;edit2->resize(230,50);edit2->move(150,200);edit2->setEchoMode(QLineEdit::Password);  //设置密文模式edit2->setPlaceholderText(":密码");  //设置占位符edit2->setStyleSheet("border:none;""border-bottom:2px solid black;");QPushButton *btn1=new QPushButton(this);btn1->setText("登录");     //设置按钮上的文本内容qDebug()<<btn1->text();   //获得按钮上的文本内容btn1->resize(80,50);     //重新设置按钮的大小qDebug()<<btn1->size();btn1->move(150,300);      //移动组件btn1->setIcon(QIcon("C:\\Users\\Administrator\\Desktop\\icon\\login.bmp"));  //设置按钮图标QPushButton *btn2=new QPushButton(this);btn2->setText("取消");     //设置按钮上的文本内容qDebug()<<btn2->text();   //获得按钮上的文本内容btn2->resize(80,50);     //重新设置按钮的大小qDebug()<<btn2->size();btn2->move(300,300);btn2->setIcon(QIcon("C:\\Users\\Administrator\\Desktop\\icon\\cancel.bmp")); //设置按钮图标connect(btn2,SIGNAL(clicked()),this,SLOT(my_slot()));//连接取消按钮//连接登录按钮connect(btn1,&QPushButton::clicked,[&](){if("admin"==edit1->text()&&"123456"==edit2->text()){qDebug()<<"登录成功"<<endl;on_jumpButton_clicked();}else{qDebug()<<"登录失败"<<endl;edit2->clear();}});}Widget::~Widget()
{}void Widget::my_slot(){this->close();
}void Widget::on_jumpButton_clicked(){emit jump();this->close();}

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

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

相关文章

当ChatGPT应用在汽车行业,具体有哪些场景?

​ ChatGPT有潜力彻底改变汽车行业并将其提升到新的高度。在ChatGPT的加持下&#xff0c;该行业的多个领域都将取得重大变化。 利用ChatGPT作更高级的虚拟助理 你可能用过现有的虚拟助理&#xff0c;它们一系列的回复有时候让人不得不感叹一句“人工智障”&#xff01;然而&a…

2023-07-26 LeetCode每日一题(更新数组后处理求和查询)

2023-07-26每日一题 一、题目编号 2569. 更新数组后处理求和查询二、题目链接 点击跳转到题目位置 三、题目描述 给你两个下标从 0 开始的数组 nums1 和 nums2 &#xff0c;和一个二维数组 queries 表示一些操作。总共有 3 种类型的操作&#xff1a; 操作类型 1 为 querie…

跨境电商多语言带直播功能功能列表

一、直播导购 1.直播入驻管理&#xff1a;直播入驻实际上就是商家入驻&#xff0c;开通商家后会获得直播权限 2.直播观看/拉流页面(分三屏&#xff0c;可以左右滑动&#xff09;&#xff1a; 左屏&#xff1a; 直播间信息&#xff1a;直播间名称、直播封面、房间号、在线人数、…

【C语言项目】扫雷(详解,附图、附代码示范)

文章目录 项目思路一、分文件进行创建二、进入游戏前的目录2.1 目录的功能&#xff1a;2.2 目录界面&#xff1a;2.3 选择进入或退出游戏2.3.1 代码示范2.3.2 图片示例&#xff1a; 三、画出游戏界面3.1 创建两个数组3.2 初始化数组3.3 打印游戏界面3.3.1 代码思路3.3.2 代码示…

gin框架内容(二)

上一篇过于gin的内容 https://mp.csdn.net/mp_blog/creation/editor/131953861 CSDNhttps://mp.csdn.net/mp_blog/creation/editor/131953861 一、路由组 为了管理具有相同前缀的URL, 将拥有URL共同前缀的路由划分为一组 为了代码的阅读性&#xff0c;使用{}包裹相同组的路由…

WPF icon的设置

想给控件设置个圆形图片&#xff0c;代码如下&#xff1a; ​<Setter Property"Icon"><Setter.Value><Image Source"/WpfApp1;component/Resource/1.ico" Width"16" Height"16"/></Setter.Value></Setter&…

ncnn-android-yolov7跑自己模型的注意事项

ncnn-android-yolov7 这是一个示例 ncnn android 项目&#xff0c;它依赖于 ncnn 库和 opencv https://github.com/Tencent/ncnn https://github.com/nihui/opencv-mobile https://github.com/xiang-wuu/ncnn-android-yolov7 如何构建和运行 步骤1 https://github.com/Ten…

linux 在excel里面找内容

linux 在excel里面找内容 背景&#xff1a;在大数据行业中&#xff0c;很多数据源是excel文件&#xff0c;但是常常会出现查找excel内容找到对应的文件&#xff0c;所以制作了简单的shell脚本方便查询对应的excel文件 查看下面精简的内容即可&#xff0c;开箱即用 shell转换 …

vue项目实现数组中添加多个相同的对象

在写项目的时候&#xff0c;有时候想有一个有较大length的对象数组&#xff0c;则可以使用如下的方法&#xff1a; export default {data() {const item {date: 2016-05-02,name: 王小虎,address: 上海市普陀区金沙江路 1518 弄};return {tableData: Array(20).fill(item)}} …

将Parasoft和ChatGPT相结合会如何?

ChatGPT是2023年最热门的话题之一&#xff0c;是OpenAI训练的语言模型。它能够理解和生成自然语言文本&#xff0c;并接受过大量数据的训练&#xff0c;包括用各种编程语言编写的许多开源项目的源代码。 软件开发人员可以利用大量的知识库来协助他们的工作&#xff0c;因为它具…

「预告」飞凌嵌入式邀您相约第13届配电技术应用论坛

2023年8月3日~5日&#xff0c;第十三届配电技术应用论坛即将在浙江杭州举行&#xff0c;飞凌嵌入式受邀参加。 作为助力快速实现“双碳”目标和新型电力系统建设&#xff0c;加强“双碳”目标下的智能配电网技术研发布局的主要会议&#xff0c;第十三届配电技术应用论坛将从政…

FPGA开发:按键消抖

按键是FPGA开发板上的重要交互元件&#xff0c;因为按键的内部的结构设计&#xff0c;在按下和松开按键时&#xff0c;按键会无法避免地产生机械抖动&#xff0c;因此要对按键输入进行特殊处理&#xff0c;否则可能会因为机械抖动产生意外的重复触发。 按键消抖有很多方法&…

C++设计模式之模板方法、策略模式、观察者模式

面向对象设计模式是”好的面向对象设计“&#xff0c;所谓”好的面向对象设计“指的是可以满足”应对变化&#xff0c;提高复用“的设计。 现代软件设计的特征是”需求的频繁变化“。设计模式的要点是”寻求变化点&#xff0c;然后在变化点处应用设计模式&#xff0c;从而更好地…

我的2023上半年总结

Hi~C站的小伙伴们好久不见哇&#xff01;釉色终于回到C站&#xff0c;开始要输出了&#xff01;这一篇文章是我的2023上半年的总结&#xff0c;以此&#xff0c;致敬那段迷茫但又不曾被辜负的时光。 文章目录 总括——你愿意花五分钟时间读读我的文章吗学习——制定目标&#…

【Matlab】基于粒子群优化算法优化BP神经网络的时间序列预测(Excel可直接替换数据)

【Matlab】基于粒子群优化算法优化BP神经网络的时间序列预测&#xff08;Excel可直接替换数据&#xff09; 1.模型原理2.数学公式3.文件结构4.Excel数据5.分块代码5.1 fun.m5.2 main.m 6.完整代码6.1 fun.m6.2 main.m 7.运行结果 1.模型原理 基于粒子群优化算法&#xff08;Pa…

nsq整体架构及各个部件作用详解

文章目录 前言 nsq的整体架构图 部件&#xff1a;nsqd 部件&#xff1a;nsqlookupd 部件&#xff1a;nsq连接库 部件&#xff1a;nsqadmin 前言 上两篇博客 centos环境搭建nsq单点_YZF_Kevin的博客-CSDN博客 linux环境搭建nsq集群_YZF_Kevin的博客-CSDN博客 我们讲了nsq是…

桥梁安全监测系统中数据采集上传用 什么?

背景 2023年7月6日凌晨时分&#xff0c;G5012恩广高速达万段230公里加80米处6号大桥部分桥面发生垮塌&#xff0c;导致造成2车受损后自燃&#xff0c;3人受轻伤。目前&#xff0c;四川省公安厅交通警察总队高速公路五支队十四大队民警已对现场进行双向管制。 作为世界第一桥梁…

Hadoop 之 Spark 配置与使用(五)

Hadoop 之 Spark 配置与使用 一.Spark 配置1.Spark 下载2.单机测试环境配置3.集群配置 二.Java 访问 Spark1.Pom 依赖2.测试代码1.计算 π 三.Spark 配置 Hadoop1.配置 Hadoop2.测试代码1.统计字符数 一.Spark 配置 环境说明环境版本AnolisAnolis OS release 8.6Jdkjava versi…

mac使用mvn下载node-sass 会Binary download failed, trying source

m1 上使用nvm 以下node的版本可以直接下载&#xff08;Binary download&#xff0c;而不是 trying source&#xff09;而不用切换mac cpu架构 zhiwenwenzhiwenwendeMBP cockpit % nvm install 14.15.5 Downloading and installing node v14.15.5... Downloading https://node…

Windows环境下git客户端中的git-bash和MinGW64

我们在 Windows10 操作系统下&#xff0c;安装了 git 客户端之后&#xff0c;可以通过 git-bash.exe 打开一个 shell&#xff1a; 执行一些 linux 系统里的命令&#xff1a; 注意到上图紫色的 MINGW64. Mingw-w64 是原始 mingw.org 项目的改进版&#xff0c;旨在支持 Window…