QDialog类

news2024/10/5 14:25:41

QDialog类

  • QDialog类
    • api
  • 使用方式
    • 调用exec()槽函数
    • 调用accept槽函数
    • 调用reject槽函数
    • 调用done槽函数
  • 例子

QDialog类

在这里插入图片描述

QWedget类中的函数,在QDialog中都可以使用

在这里插入图片描述
在这里插入图片描述

api

// 构造函数
QDialog::QDialog(QWidget *parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags());

//槽函数
// 模态显示窗口
[virtual slot] int QDialog::exec();
// 隐藏模态窗口, 并且解除模态窗口的阻塞, 将 exec() 的返回值设置为 QDialog::Accepted
[virtual slot] void QDialog::accept();
// 隐藏模态窗口, 并且解除模态窗口的阻塞, 将 exec() 的返回值设置为 QDialog::Rejected
[virtual slot] void QDialog::reject();
// 关闭对话框并将其结果代码设置为r。finished()信号将发出r;
// 如果r是QDialog::Accepted 或 QDialog::Rejected,则还将分别发出accept()或Rejected()信号。
[virtual slot] void QDialog::done(int r);

//信号函数
[signal] void QDialog::accepted();
[signal] void QDialog::rejected();
[signal] void QDialog::finished(int result);

显示模态对话框或非模态对话框

使用方式

我们主要关注的是槽函数,和信号函数。

调用exec()槽函数

其中调用exec()函数显示对话框,他的返回值和关闭对话框的方式相关:
在这里插入图片描述

Shows the dialog as a modal dialog, blocking until the user closes it. The function returns a DialogCode result.

在这里插入图片描述
exec()函数的返回值有三种类型:


QDialog::Accepted  1

QDialog::Rejected  0

其他的自定义数值        

调用accept槽函数

在这里插入图片描述
隐藏模态框,并将exec()的返回值设置为 1
并发射 信号: void QDialog::accepted()void QDialog::finished(int result)

调用reject槽函数

在这里插入图片描述
隐藏模态框,并将exec()的返回值设置为 0

并发射 信号: void QDialog::rejected()void QDialog::finished(int result)

调用done槽函数

在这里插入图片描述
关闭对话框,并将exec()的返回值设置为自定义值。
并发射 信号: void QDialog::finished(int result)

例子

mainwindow
在这里插入图片描述
dialog
在这里插入图片描述
mainwindow调用dialog

在这里插入图片描述

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QDebug"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    d = new myDialog(this);  //创建对话框

    //捕获dialog窗口关闭的信号,并触发槽函数
    connect(d,&QDialog::accepted,this,[=](){
        qDebug() <<"接受到了QDialog::accepted信号";
    });
    connect(d,&QDialog::rejected,this,[=](){
        qDebug() <<"接受到了QDialog::rejected信号";
    });
    connect(d,&QDialog::finished,this,[=](int result){
        qDebug() <<"接受到了QDialog::finished(int result)信号,其中,从槽函数传递的参数为: "<<result;
    });



}

MainWindow::~MainWindow()
{
    delete ui;
}


void MainWindow::on_showDialog_clicked()
{
    //显示对话框,并打印返回值
    qDebug()<<"d->exec()的返回值为: "<<d->exec();  //模态显示
}

在这里插入图片描述
dialog中写调用槽函数代码
在这里插入图片描述

#include "mydialog.h"
#include "ui_mydialog.h"
#include "QDebug"

myDialog::myDialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::myDialog)
{
    ui->setupUi(this);
}

myDialog::~myDialog()
{
    delete ui;
}



void myDialog::on_accept_clicked()
{
    qDebug()<<"点击了accept一次";
    this->accept();
}

void myDialog::on_reject_clicked()
{
    qDebug()<<"点击了reject一次";
    this->reject();
}

void myDialog::on_done_clicked()
{
    qDebug()<<"点击了done一次";
    this->done(10);
}

效果:
点击显示对话框,调用了on_showDialog_clicked函数,在其中调用了d->exec()显示了对话框
在这里插入图片描述
点击accept,调用this->accept();槽函数
在这里插入图片描述
隐藏对话框,并将exec函数返回值设置为1,发射QDialog::accepted信号和QDialog::finished

QDialog::accepted信号和QDialog::finished信号被捕获,调用槽函数,显示参数。

在这里插入图片描述
其他同理,就不阐述.。

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

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

相关文章

Numpy基础操作:数组之间形状相互转换

ndarray对象提供了一些可以便捷地改变数组基础形状的属性和方法&#xff0c;例如&#xff0c;将一个3行4列的二维数组转换成6行2列的二维数组&#xff0c;关于这些属性和方法的具体说明如表9-3所示。 上述这些方法都能够改变数组的形状&#xff0c;但是&#xff0c;reshape()、…

JDK1.8 切换版本之TLS协议导致项目链接数据库报错

JDK1.8 切换版本之TLS协议导致项目链接数据库报错_jdk1.8 不支持的tls1.2 吗_Lim0816的博客-CSDN博客

为什么MySQL单表不能超过2000万行?

最近看到一篇《我说MySQL每张表最好不要超过2000万数据&#xff0c;面试官让我回去等通知》的文章&#xff0c;非常有趣。 文中提到&#xff0c;他朋友在面试的过程中说&#xff0c;自己的工作就是把用户操作信息存到MySQL里&#xff0c;因为数据量超大&#xff08;5000万条左…

新版塔罗占卜网站源码八字合婚风水起名附带搭建视频

新版塔罗占卜网站源码八字合婚风水起名PHP源码附带搭建视频,附带文本教学及视频教程安装方法以linux为例: 1、建议在服务器上面安装宝塔面板,以便操作,高逼格技术员可以忽略这步操作。 2、把安装包文件解压到根目录,同时建立数据库,把数据文件导入数据库 3、修改核心文件…

博客园自定义样式美化

<script type"text/javascript">window.cnblogsConfig {info: {name: XXXXXX, // 用户名startDate: XXXXXX, // 入园时间&#xff0c;年-月-日。入园时间查看方法&#xff1a;鼠标停留园龄时间上&#xff0c;会显示入园时间blogIcon: https://images.cnblogs.…

SQL-每日一题【1084. 销售分析III】

题目 Table: Product Table: Sales 编写一个SQL查询&#xff0c;报告2019年春季才售出的产品。即仅在2019-01-01至2019-03-31&#xff08;含&#xff09;之间出售的商品。 以 任意顺序 返回结果表。 查询结果格式如下所示。 示例 1: 解题思路 前置知识 between and between…

GifGun for Mac插件,帮你输出GIF动画格式

GifGun for Mac是一款安装在After Effects中使用的AE快速输出GIF动图格式插件&#xff0c;你可以使用gifgun插件直接输出GIF动画格式&#xff0c;支持自定义GIF文件的大小、帧数率等各种属性&#xff01; AE插件下载-GifGun for Mac(AE快速输出GIF动图格式插件)支持AE 2022- Ma…

第二次后端复习(集合框架、IO流、多线程)

1. 集合框架 Java集合类主要有两个根接口Collection和Map派生出来 Collection派生两个子接口 List List代表了有序可重复集合&#xff0c;可以直接根据元素的索引进行访问Set Set代表无序不可重复集合&#xff0c;只能根据元素本身进行访问 Map接口派生 Map代表的是存储key…

企业搭建知识库,为什么倾向于私有化部署

在当今信息爆炸的时代&#xff0c;随着企业的发展扩大&#xff0c;企业内部知识分散在每个员工的电脑上&#xff0c;信息冗余&#xff0c;存在多份数据&#xff0c;难以做到统一&#xff1b;文档涉密权限问题管理难度大、监控成本高、管理难度大。企业面临着处理和管理大量知识…

狄耐克带着爱与希望,踏上了又一段关于奉献的旅程

路在脚下&#xff0c; 狄耐克紧盯科技前沿&#xff0c; 聚焦国家发展战略和人民美好生活需要&#xff0c; 在智慧社区和智慧医院领域 敢于筑梦、勇于追梦、勤于圆梦&#xff1b; 心系远方&#xff0c; 狄耐克真情投入奉献事业&#xff0c; 将爱与希望的种子撒向全国各地…

随机森林构造有哪些步骤?随机森林构造案例

在机器学习中&#xff0c;随机森林是一个包含多个决策树的分类器&#xff0c;并且其输出的类别是由个别树输出的类别的众数而定。 随机森林 Bagging 决策树 例如, 如果你训练了5个树, 其中有4个树的结果是True, 1个树的结果是False, 那么最终投票结果就是True随机森林够造过…

Acwing.875 快速幂

题目 给定n组ai , bi, pi&#xff0c;对于每组数据&#xff0c;求出akimod pi的值。 输入格式 第一行包含整数n。 接下来n行&#xff0c;每行包含三个整数ai , bi,pi。输出格式 对于每组数据&#xff0c;输出一个结果&#xff0c;表示aibimod pi的值。 每个结果占一行。 数…

诚迈科技承办大同首届信息技术产业峰会,共话数字经济崭新未来

7月28日&#xff0c;“聚势而强共领信创”2023大同首届信息技术产业峰会圆满举行。本次峰会由中共大同市委、大同市人民政府主办&#xff0c;中国高科技产业化研究会国际交流合作中心、山西省信创协会协办&#xff0c;中共大同市云冈区委、大同市云冈区人民政府、诚迈科技&…

git下载太慢

git官网下载git太慢 阿里git地址 下载适合自己的版本

24考研数据结构-串的模式匹配kmp以及优化

目录 4.2串的模式匹配4.2.1朴素模式匹配算法时间复杂度分析&#xff1a; 4.2.2改进的模式匹配算法——KMP算法1. 求next数组2. 利用next数组进行模式匹配3. 时间复杂度分析 4.2.3 next数组的优化思路nextval&#xff0c;优化KMP 概括数据结构&#xff1a;串模式匹配与KMP算法及…

windows编译新版本linphone

目录​​​​​​​ 环境 获取源码(使用5.0.0版本5.3.0-alpha有问题编译不过) 编译环境准备 编译&#xff08;使用ninja&#xff09; 编译&#xff08;不适用使用ninja&#xff09; 报错解决 linphone-desktop是一款基于SIP的标准开源网络电话系统&#xff0c;它使用了Qt…

下载编译瑞芯微提供的源码1-RK3568

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、下载源码二、编译瑞芯微原厂源码三、电源检查一、下载源码 1.下载 android11 的源码,在网盘资料“iTOP-3568 开发板/iTOP-3568 开发板光 盘资料/20220301(第三版资料)/04_Android11 源码”目…

Python(五十三)列表元素的添加操作

❤️ 专栏简介&#xff1a;本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中&#xff0c;我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 &#xff1a;本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

leetcode:1757. 可回收且低脂的产品

难度&#xff1a;简单 表&#xff1a;Products ---------------------- | Column Name | Type | ---------------------- | product_id | int | | low_fats | enum | | recyclable | enum | ---------------------- 在 SQL 中&#xff0c;product_id 是这个表…

Spring框架 —— AOP面向切面编程

前言 前面荔枝已经梳理了Spring框架中的IOC部分的知识&#xff0c;接下来荔枝继续梳理Spring框架的另一大重点&#xff1a;AOP面向切面编程。在这篇文章中&#xff0c;荔枝会着重弄清楚AOP的概念并对实现AOP的两种方式进行梳理&#xff0c;同时荔枝也会相应给出代码样例。毕竟荔…