QDialog

属性方法

样式表

  background-color: qlineargradient(spread:reflect, x1:0.999896, y1:0.494136, x2:1, y2:1, stop:0 rgba(0, 0, 0, 255), stop:1 rgba(255, 255, 255, 255));border: 1px groove rgb(232, 232, 232);border-radius: 20px;

QDialog 的常用方法:

  • exec(): 以模态方式运行对话框,阻塞其它窗口,直到该对话框关闭。
  • show(): 以非模态方式显示对话框,不会阻塞其它窗口。
  • accept(): 以接受的方式关闭对话框,通常与确定按钮关联。
  • reject(): 以拒绝的方式关闭对话框,通常与取消按钮关联
void QDialog::done(int result);

result: 这个参数是一个整数,用于指定对话框的返回值。这个值通常是 QDialog::AcceptedQDialog::Rejected,分别对应对话框的“接受”和“拒绝”操作,但也可以是其他自定义的整数值。

函数行为:

  • 当调用 done(int result) 时,它首先会设置对话框的返回值。
  • 然后,它会关闭对话框。如果对话框是模态的(即阻止其它窗口接收输入),这个动作会释放任何模态循环。
  • 在关闭对话框之前,done 会发出 finished() 信号,并传递 result 参数。
  • 如果 QDialog 是通过 exec() 方法以模态方式显示的,exec() 将返回 result 值。

void setWindowOpacity(qreal level);

level 参数是一个 qreal(通常是 double 的别名),取值范围从 0.01.0,其中 0.0 表示完全透明,1.0 表示完全不透明。

void QEventLoop::processEvents(QEventLoop::ProcessEventsFlags flags = AllEvents);

flags: 这是一个可选参数,其类型为 QEventLoop::ProcessEventsFlags。这个枚举类型定义了不同的标志,用于指定 processEvents() 方法应该处理哪些类型的事件。标志的默认值是 AllEvents,表示处理所有类型的事件。其它可能的值包括但不限于 ExcludeUserInputEvents, ExcludeSocketNotifiers, 和 WaitForMoreEvents 等。

ProcessBar常用方法:

  • setValue(int value):设置当前进度值。
  • setMinimum(int min)setMaximum(int max):设置进度条的最小值和最大值。
  • setOrientation(Qt::Orientation orientation):设置进度条的方向(水平或垂直)。
  • setFormat(const QString &format):设置进度条上显示的文本格式。

进度条

TestPro.h

TestPro.cpp

#pragma once
#include<qthread.h>
#include <QObject>class TestPro  : public QThread
{Q_OBJECTpublic:TestPro()=default;TestPro(QObject *parent);~TestPro();
signals:void setPos(int pos);
protected:void run();
};
#include "TestPro.h"TestPro::TestPro(QObject *parent): QThread(parent)
{}TestPro::~TestPro()
{}void TestPro::run() {//模拟做事for (int i = 0; i <= 100; i++) {setPos(i);msleep(100);}
}

QtWidgetsApplication11.h

#pragma once#include <QtWidgets/QDialog>
#include "ui_QtWidgetsApplication11.h"class QtWidgetsApplication11 : public QDialog
{Q_OBJECTpublic:QtWidgetsApplication11(QWidget *parent = nullptr);~QtWidgetsApplication11();private:Ui::QtWidgetsApplication11Class ui;
};
#pragma once#include <QDialog>
#include "ui_Pro.h"class Pro : public QDialog
{Q_OBJECTpublic:Pro(QWidget *parent = nullptr);~Pro();
public slots:void setPos(int pos);private:Ui::ProClass ui;
};
#include "Pro.h"
#include<qthread.h>Pro::Pro(QWidget *parent): QDialog(parent)
{ui.setupUi(this);
}Pro::~Pro()
{}
void Pro::setPos(int pos) {ui.progressBar->setValue(pos);if (pos == 100) {for (int i = 100; i > 0; i--) {this->setWindowOpacity((double)i / 100.0);QThread::msleep(10);QEventLoop loop;loop.processEvents();}this->close();}}
#include "QtWidgetsApplication11.h"
#include <QtWidgets/QApplication>
#include"Pro.h"
#include"TestPro.h"int main(int argc, char *argv[])
{QApplication a(argc, argv);Pro p;TestPro tp;QObject::connect(&tp, SIGNAL(setPos(int)),&p,SLOT(setPos(int)));tp.start();p.exec();QtWidgetsApplication11 w;w.show();return a.exec();
}

main.cpp

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

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

相关文章

前端 js 基础(1)

js 结果输出 &#xff08;点击按钮修改文字 &#xff09; <!DOCTYPE html> <html> <head></head><body><h2>Head 中的 JavaScript</h2><p id"demo">一个段落。</p><button type"button" onclic…

基于PHP的校园代购商城系统

有需要请加文章底部Q哦 可远程调试 基于PHP的校园代购商城系统 一 介绍 此校园代购商城系统基于原生PHP开发&#xff0c;数据库mysql&#xff0c;前端bootstrap。系统角色分为用户和管理员。(附带参考设计文档) 技术栈&#xff1a;phpmysqlbootstrapphpstudyvscode 二 功能 …

2023/12/30 c++ work

定义一个Person类&#xff0c;私有成员int age&#xff0c;string &name&#xff0c;定义一个Stu类&#xff0c;包含私有成员double *score&#xff0c;写出两个类的构造函数、析构函数、拷贝构造和拷贝赋值函数&#xff0c;完成对Person的运算符重载(算术运算符、条件运算…

03 团队研究进一步详细介绍

一、印第安纳大学邢璐祎课题组 【团队网站】 https://www.xing-luyi.com/ 【团队介绍】 研究以形式化方法为特色&#xff0c;并保证系统中的安全性和隐私合规性&#xff0c;特别是物联网、云、移动和软件供应链。 【团队成果汇总】 物联网系统&#xff1a;[Oakland24][Se…

骑砍战团MOD开发(30)-游戏大地图map.txt

骑砍1战团mod开发-大地图制作方法_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1rz4y1c7wH/ 一.骑砍游戏大地图 骑砍RTS视角游戏大地图 大地图静态模型(map.txt) 军团/城镇图标(module_parties.py). 骑砍大地图的战争迷雾和天气通过API进行管理和控制: # Weather-h…

分库分表之Mycat应用学习五

5 Mycat 离线扩缩容 当我们规划了数据分片&#xff0c;而数据已经超过了单个节点的存储上线&#xff0c;或者需要下线节 点的时候&#xff0c;就需要对数据重新分片。 5.1 Mycat 自带的工具 5.1.1 准备工作 1、mycat 所在环境安装 mysql 客户端程序。 2、mycat 的 lib 目录…

48、激活函数 - 梯度消失和梯度爆炸

简单介绍下梯度消失和梯度爆炸,这个不是重点,但是我觉得有必要再深入了解这个概念,以及很多激活函数为什么是可以防止梯度消失的。 梯度消失和梯度爆炸实际上是在神经网络训练过程中经常会遇到的两类问题,这两类问题都与梯度有关。 什么是梯度 在神经网络训练中,梯度是指…

深度学习 | Transformer模型及代码实现

Transformer 是 Google 的团队在 2017 年提出的一种 NLP 经典模型&#xff0c;现在比较火热的 Bert 也是基于 Transformer。Transformer 模型使用了 Self-Attention 机制&#xff0c;不采用 RNN 的顺序结构&#xff0c;使得模型可以并行化训练&#xff0c;而且能够拥有全局信息…

一年百模大战下来,有哪些技术趋势和行业真相逐渐浮出水面?

介绍 本人是独立开源软件开发者&#xff0c;参与很多项目建设&#xff0c;谈下感受。 ChatGPT开始AI生成元年&#xff0c;经历一年依然是第一。 LLaMA的巧合开启开源大模型浪潮。 名词解释 AIGC : AI-Generated Content 指利用人工智能技术&#xff08;生成式AI路径&#x…

类和接口

内容大部分来源于学习笔记&#xff0c;随手记录笔记内容以及个人笔记 对象Object java是面向对象的语言&#xff0c;一个对象包含状态和行为 可以这样理解&#xff0c;我眼前的石头&#xff0c;手里水杯&#xff0c;这些具体到某一个个体&#xff0c;这就是对象&#xff1b;…

非科班,培训出身,怎么进大厂?

今天分享一下我是怎么进大厂的经历&#xff0c;希望能给大家带来一点点启发&#xff01; 阿七毕业于上海一所大学的管理学院&#xff0c;在读期间没写过一行 Java 代码。毕业之后二战考研失利。 回过头来看&#xff0c;也很庆幸这次考研失利&#xff0c;因为这个时候对社会一…

OpenOCD简介和下载安装(Ubuntu)

文章目录 OpenOCD简介OpenOCD软件模块OpenOCD源码下载OpenOCD安装 OpenOCD简介 OpenOCD&#xff08;Open On-Chip Debugger&#xff09;开放式片上调试器 OpenOCD官网 https://openocd.org/&#xff0c;进入官网点击 About 可以看到OpenOCD最初的设计是由国外一个叫Dominic Ra…

红队打靶练习:SAR: 1

目录 信息收集 1、arp 2、netdiscover 3、nmap 4、nikto 5、whatweb 小结 目录探测 1、gobuster 2、dirsearch WEB CMS 1、cms漏洞探索 2、RCE漏洞利用 提权 get user.txt 本地提权 信息收集 1、arp ┌──(root㉿ru)-[~/kali] └─# arp-scan -l Interface:…

写在2024年初,软件测试面试笔记总结与分享

大家好&#xff0c;最近有不少小伙伴在后台留言&#xff0c;得准备年后面试了&#xff0c;又不知道从何下手&#xff01;为了帮大家节约时间&#xff0c;特意准备了一份面试相关的资料&#xff0c;内容非常的全面&#xff0c;真的可以好好补一补&#xff0c;希望大家在都能拿到…

LanceDB:在对抗数据复杂性战役中,您可信赖的坐骑

LanceDB 建立在 Lance&#xff08;一种开源列式数据格式&#xff09;之上&#xff0c;具有一些有趣的功能&#xff0c;使其对 AI/ML 具有吸引力。例如&#xff0c;LanceDB 支持显式和隐式矢量化&#xff0c;能够处理各种数据类型。LanceDB 与 PyTorch 和 TensorFlow 等领先的 M…

24届春招实习必备技能(一)之MyBatis Plus入门实践详解

MyBatis Plus入门实践详解 一、什么是MyBatis Plus? MyBatis Plus简称MP&#xff0c;是mybatis的增强工具&#xff0c;旨在增强&#xff0c;不做改变。MyBatis Plus内置了内置通用 Mapper、通用 Service&#xff0c;仅仅通过少量配置即可实现单表大部分 CRUD 操作&#xff0…

【LMM 003】生物医学领域的垂直类大型多模态模型 LLaVA-Med

论文标题&#xff1a;LLaVA-Med: Training a Large Language-and-Vision Assistant for Biomedicine in One Day 论文作者&#xff1a;Chunyuan Li∗, Cliff Wong∗, Sheng Zhang∗, Naoto Usuyama, Haotian Liu, Jianwei Yang Tristan Naumann, Hoifung Poon, Jianfeng Gao 作…

LeetCode二叉树路径和专题:最大路径和与路径总和计数的策略

目录 437. 路径总和 III 深度优先遍历 前缀和优化 124. 二叉树中的最大路径和 437. 路径总和 III 给定一个二叉树的根节点 root &#xff0c;和一个整数 targetSum &#xff0c;求该二叉树里节点值之和等于 targetSum 的 路径 的数目。 路径 不需要从根节点开始&#xf…

简单FTP客户端软件开发——VMware安装Linux虚拟机(命令行版)

VMware安装包和Linux系统镜像&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1UwF4DT8hNXp_cV0NpSfTww?pwdxnoh 提取码&#xff1a;xnoh 这个学期做计网课程设计【简单FTP客户端软件开发】需要在Linux上配置 ftp服务器&#xff0c;故此用VMware安装了Linux虚拟机&…

burpsuite模块介绍之compare

导语 Burp Comparer是Burp Suite中的一个工具&#xff0c;主要提供一个可视化的差异比对功能&#xff0c;可以用于分析比较两次数据之间的区别。它的应用场景包括但不限于&#xff1a; 枚举用户名过程中&#xff0c;对比分析登陆成功和失败时&#xff0c;服务器端反馈结果的区…