QT中界面切换的三种方式

article/2025/9/15 3:51:34

本周学习了QT的使用。QT身为一个图形界面的开发框架,在实际使用时必不可少的一环就是对不同界面的切换。本文中总结了自己练习使用过的三种切换界面的方式。

第一种:哪里进行界面切换就在哪里创建界面。

        这种方式也是最容易理解的一种,当我们需要切换到下一个窗口时,创建并显示下一个窗口,同时关闭或隐藏当前窗口,即可创建成功。不过,这种方式有些缺陷,有可能发生同一个窗口被创建多次的现象。

第二种:使用信号和槽的方式实现界面切换

       首先,我们新定义一个类,为了避免多次创建窗口,我们在这个类的构造函数里创建所有的窗口,但只显示主界面。

        当我们点击按钮时,该界面向主界面发送一个自定义信号,主界面接受到后执行对应的槽函数,槽函数进行当前界面隐藏,下一界面显示的操作。

        注:自定义信号可以有参数,槽函数也可以有参数,但槽函数的参数不能大于信号的参数,并且槽函数参数的顺序和类型需要完全匹配信号的参数。

        因为信号可以有参数,所以,信号也是可以重载的。(槽函数也可以重载)。

         为了能够找到重载中使用的那一个信号和槽函数,在关联的时候,我们需要手动给定信号和槽函数的参数类型。

 第三种:单例模式

        严格来说,单例模式是C++的设计模式,练习QT的话应当避免使用这一写法,但由于单例非常契合这种多窗口切换的状况,就顺带说一下。

        单例的概念:一个类只有一个对象。

        延伸出的三个条件:1.单例的构造函数在私有区。

                                         2.单例有一个静态的数据来存放唯一的对象。

                                         3.单例要提供一个静态的成员函数来让外界获取这个唯一对象。

        我们在构造函数种创建三个窗口,

        get函数,让外界获取这个唯一的对象

        在使用时,我们只需要获取对象,隐藏当前界面,显示下一界面即可。因为界面只创建了一次,其它情况我们都只是获取已创建的对象,所以完全能够避免多次创建同一界面的情况。

 


http://chatgpt.dhexx.cn/article/H97sn6MU.shtml

相关文章

Qt界面开发(三)

这次要给大家分享一些我在github和qtcn(主要是liudianwu大神,Qt界面开发(一)有很多都是他的作品)上找到的比较漂亮且实用Qt界面和控件集合。 -------------------------------------我是分割线------------------------------------- &…

QT界面美化

转自点击打开链接 - 经验总结 1. 可用对话框(QDialog)模拟类似Android中toast的效果。 - 设置程序界面风格 在main函数中 QApplication::setStyle("windows"); QApplication::setStyle("windowsxp"); QApplication::setStyle("…

QT介绍和基本界面构建(QT一)

目录 一、Qt 介绍二、Qt工程1.工程 firstQt.pro2.Qt入口 三、用Qtcreator集成开发环境创建Qt工程代码ui1.创建项目的时候注意的问题2.desgner设计器界面说明 四、纯代码实现Qt工程创建带ui界面编译运行五、基本组件(QLineEidt, QLabel, QPush…

QT 简单的登录界面

一、描述 有登录界面、注册界面,用到sqlite数据库保存账号和密码,界面还没有布局美化等,只实现了最基本的功能。 二、界面及功能介绍 1、登录界面2、注册界面 3、主界面 没想好弄啥功能,于是就弄了两个按钮。 4、文件结构 三、…

(四) 制作一个最简单的qt界面

前面我们学了 (一) 在Windows上搭建Qt环境 (二) Qt新建Android工程 (三) Qt入门篇之C基础 今天我们用Qt制作一个最简单的qt登录界面 一、在PC机上运行 1.QT基础 1.qt的移植性非常强,一套代码我们不用改的太多,直接通用所有的平台,不久的将来&#xff…

【Qt登录界面】

Qt登录界面 文章目录 Qt登录界面前言一、创建项目二、创建数据库及用户表三、登录界面设计四、注册界面设计五、效果图六、参考教程 前言 第一次在这上面写文章,没啥经验,如果有啥不当的地方,请各位大佬批评指正。我刚学Qt不久,结…

QT 简单的QT用户登录界面

简单的QT用户登录界面 一、简单描述 在登录界面输入用户名和密码正确之后才进入欢迎界面。 例子打包:链接: https://pan.baidu.com/s/1HEpNFghMDrBguMt93aRJ_A 提取码: bg4n 二、效果 三、工程文件结构 四、源文件 1、LoginForm02.pro文件 QT widgets guiSOUR…

一文读懂qt界面设计(分裂器,布局,拉伸,各种属性设置)

可以先看看我这个文章:qt关于界面设计中的一些知识总结_我是标同学的博客-CSDN博客_qt 水平伸展 现在我们来正式开始讲解。 布局种类 qt中能称为布局管理器的有如下6个: 水平布局(QHBoxLayout)垂直布局(QVBoxLayout…

Qt界面开发(一)(各种控件以及图表)

注:资源主要来源:http://www.qtcn.org/bbs/u/110085 (刘大神) 如若侵权,请联系删除。 本文只是将作品集合到起来,方便大家一起学习。 资源集合已经放到 链接:https://pan.baidu.com/s/1sVvQE8…

嵌入式学习之QT学习----3 制作简单的QT界面(如:QQ登录界面)

1、创建一个QT工程 new project —> Application —> Qt Widgets Application —> choose…(注意不要有中文路径)填写名称(我写的名称为class2)和创建路径(D:\qt\qt_demo\class2) —> 填写类名…

QT界面布局和设计

一、设计 对功能和模块进行分析,然后设计对应的模块,将每个模块都用widget展示作为组件。工程结构示例:二、完成模块 代码分别设计各个组件,合适即可三、主界面连接 主界面连接各个子模块。在这里插入代码片#include "AutoFl…

tomcat配置url跳转_tomcat安装目录详解

打开tomcat的解压之后的目录可以看到如下的目录结构: 1.bin: bin目录主要是用来存放tomcat的命令,主要有两大类,一类是以.sh结尾的(linux命令),另一类是以.bat结尾的(windows命令&a…

【转】URL访问地址和Tomcat项目部署中不得不说的小秘密(JAVA之Tomcat服务器)

今天来简单讲讲tomcat项目部署和url地址访问栏的关系,顺便和大家分享下,叙述不当之处,还请大家多多指导! 众所周知,Tomcat项目发布的默认访问地址格式如下:http://localhost:8080/MyDemo/index.jsp 由于we…

tomcat配置url跳转_Tomcat

Tomcat介绍 1.Web服务器介绍 Web服务器可以解析HTTP协议,收到请求后可以进行响应,比如响应静态资源、进行页面跳转等 Web服务器响应可委托给CGI脚本、JSP脚本、ASP脚本、服务器端JS等程序或其它服务器端技术 Web服务器通常产生一个html响应以便浏览器浏览 2.常见Web服务器 We…

web服务之Tomcat

目录 Tomcat介绍 Tomcat组件 Tomcat组件 JavaServlet JSP容器 Tomcat部署步骤 关闭防火墙,将安装 Tomcat 所需软件包上传到 /opt 目录下 安装 JDK 设置 JDK 环境变量 安装启动 Tomcat tomcat的主要目录 Tomcat 虚拟主机配置 创建test1和test2项目目录和文…

Tomcat实现Https服务

Tomcat实现Https服务 1、JDK生成证书 进入JDK/bin目录键盘按下shift 鼠标右键,选择“在此处打开命令窗口”打开DOS命令窗键入命令”keytool -v -genkey -alias myKey -keyalg RSA -keystore F:/jdk1.6.0_45/myKey.keystore” 证书密码123456 2、配置tomcat 配置…

【转】URL访问地址和Tomcat项目部署中不得不说的小秘密

今天来简单讲讲tomcat项目部署和url地址访问栏的关系,顺便和大家分享下,叙述不当之处,还请大家多多指导! 众所周知,Tomcat项目发布的默认访问地址格式如下:http://localhost:8080/MyDemo/index.jsp 由于we…

【tomcat路径匹配源码分析】搞懂tomcat中web.xml配置servlet的url-pattern为“/“和“/*“的区别

搞懂tomcat中web.xml配置servlet的url-pattern为"/"和"/*"的区别 前言结论Servlet匹配规则(tomcat源码)分析举个例子路径配置为/导致拦截静态资源问题的解决方案 总结 原文地址 前言 我在写原生javaWEB项目时,想通过注册…

通过URL请求tomcat服务器直接下载文件

从一个服务器上下载文件,是很常见的情况。通常我们想通过URL来访问直接下载一个文件,对于Tomcat服务器而言,是非常简单的,Tomcat本身就是作为一个web服务器的,通过简单的配置就可以实现。 配置如下: 1、在…

tomcat配置使得访问http协议(或者直接输入www.网址.com) 直接跳转访问https协议

由于https协议比http协议安全,但是如果网站安装了ssl(如果没有安装,可百度搜索"阿里云ssl免费证书",阿里官网会提供安装方法,比较简单),发现每次输入网址必须得手动输入https,而且大家习惯输入www.网址.com,会直接导致访问不到网站的.下面介绍直接修改tomcat配置,使得…