qt对话框功能介绍

devtools/2025/1/18 7:30:14/

1、颜色对话框

	//方式一QColor color = QColorDialog::getColor(Qt::red, this, QString::fromLocal8Bit("颜色对话框"),QColorDialog::ShowAlphaChannel);qDebug() <<"color:" <<color;//方式二QColorDialog dialog(Qt::red, this); // 创建对象dialog.setOption(QColorDialog::ShowAlphaChannel);   // 显示 alpha 选项dialog.exec();  // 以模态方式运行对话框QColor color = dialog.currentColor();   // 获取颜色对话框当前颜色qDebug() << "color:" << color;    // 输出颜色信息

2、文件对话框

	//注意:(* png * jpg)中间有空格QString fileName = QFileDialog::getOpenFileName(this, QString::fromLocal8Bit("文件对话框"), "C:", QString::fromLocal8Bit("图片文件(* png * jpg);;文本文件(* txt)"));qDebug() << "fileName:" << fileName;QStringList fileNames = QFileDialog::getOpenFileNames(this, QString::fromLocal8Bit("文件对话框"), "C:", QString::fromLocal8Bit("图片文件(* png * jpg);;文本文件(* txt)"));qDebug() << "fileNames:" << fileNames;QString saveFileName = QFileDialog::getSaveFileName(this, QString::fromLocal8Bit("Save File"), QString::fromLocal8Bit("Images (*.png *.xpm *.jpg)"));qDebug() << "saveFileName:" << saveFileName;QString dir = QFileDialog::getExistingDirectory(this, QString::fromLocal8Bit("Open Directory"), "C:", QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks);qDebug() << "dir:" << dir;

3、字体对话框

	bool ok;QFont font = QFontDialog::getFont(&ok, this);// 如果单击 Cancel 按钮,那么更改字体if (ok)ui.pushButton_font->setFont(font);elseqDebug() << QString::fromLocal8Bit("没有选择字体!");

4、输入对话框

	bool ok;// 获取字符串QString string = QInputDialog::getText(this, QString::fromLocal8Bit("输入字符串对话框"), QString::fromLocal8Bit("请输入用户名:"), QLineEdit::Normal, QString::fromLocal8Bit("admin"), &ok);if (ok)qDebug() << "string:" << string;// 获取整数int value1 = QInputDialog::getInt(this, QString::fromLocal8Bit("输入整数对话框"), QString::fromLocal8Bit("请输入 -1000到1000之间的数值"), 100, -1000, 1000, 10, &ok);if (ok)qDebug() << "value1:" << value1;// 获取浮点数double value2 = QInputDialog::getDouble(this, QString::fromLocal8Bit("输入浮点数对话框"), QString::fromLocal8Bit("请输入-1000到1000之间的数值"), 0.00, -1000, 1000, 2, &ok);if (ok) qDebug() << "value2:" << value2;// 获取条目const QStringList items = { "aa", "bb" };QString item = QInputDialog::getItem(this, QString::fromLocal8Bit("输入条目对话框"), QString::fromLocal8Bit("请选择或输入一个条目"), items, 0, true, &ok);if (ok) qDebug() << "item:" << item;

5、消息对话框

	// 问题对话框int ret1 = QMessageBox::question(this, QString::fromLocal8Bit("问题对话框"), QString::fromLocal8Bit("问题对话框"), QMessageBox::Yes, QMessageBox::No);if (ret1 == QMessageBox::Yes)qDebug() << QString::fromLocal8Bit("问题!");// 提示对话框int ret2 = QMessageBox::information(this, QString::fromLocal8Bit("提示对话框"), QString::fromLocal8Bit("提示对话框"), QMessageBox::Ok);if (ret2 == QMessageBox::Ok)qDebug() << QString::fromLocal8Bit("提示!");// 警告对话框int ret3 = QMessageBox::warning(this, QString::fromLocal8Bit("警告对话框"), QString::fromLocal8Bit("警告对话框"), QMessageBox::Abort);if (ret3 == QMessageBox::Abort)qDebug() << QString::fromLocal8Bit("警告!");// 错误对话框int ret4 = QMessageBox::critical(this, QString::fromLocal8Bit("严重错误对话框"), QString::fromLocal8Bit("严重错误对话框"), QMessageBox::YesAll);if (ret4 == QMessageBox::YesAll)qDebug() << QString::fromLocal8Bit("错误");// 关于对话框QMessageBox::about(this, QString::fromLocal8Bit("关于对话框"), QString::fromLocal8Bit("关于对话框"));

6、进度对话框

	QProgressDialog dialog(QString::fromLocal8Bit("文件进度"), QString::fromLocal8Bit("取消"), 0, 50000, this);dialog.setWindowTitle(QString::fromLocal8Bit("进度对话框"));dialog.setWindowModality(Qt::WindowModal);  // 将对话框设置为模态dialog.show();for (int i = 0; i < 50000; i++){dialog.setValue(i);QCoreApplication::processEvents();// 避免界面冻结if (dialog.wasCanceled()) // 按下取消按钮则中断break;}dialog.setValue(50000);qDebug() << QString::fromLocal8Bit("结束!");

7、错误信息对话框

	QErrorMessage *errordlg = new QErrorMessage(this);;errordlg->setWindowTitle(QString::fromLocal8Bit("错误信息对话框"));errordlg->showMessage(QString::fromLocal8Bit("这里是出错信息!"));

8、向导对话框

QWizardPage * createPage1()  // 向导页面1
{QWizardPage *page = new QWizardPage;page->setTitle(QString::fromLocal8Bit("介绍"));return page;
}QWizardPage * createPage2()  // 向导页面2
{QWizardPage *page = new QWizardPage;page->setTitle(QString::fromLocal8Bit("用户选择信息"));return page;
}QWizardPage * createPage3()  // 向导页面3
{QWizardPage *page = new QWizardPage;page->setTitle(QString::fromLocal8Bit("结束"));return page;
}
void Dialogs::slotBtnWizard()
{QWizard wizard(this);wizard.setWindowTitle(QString::fromLocal8Bit("向导对话框"));wizard.addPage(createPage1());     // 添加向导页面wizard.addPage(createPage2());wizard.addPage(createPage3());wizard.exec();
}


http://www.ppmy.cn/devtools/26411.html

相关文章

OpenResty 操作 Redis 和 MySQL

OpenResty 是一个基于 Nginx 的 Web 开发平台&#xff0c;它通过内置的方式集成了 LuaJIT&#xff0c;并内置了很多常用的第三方 Nginx 模块&#xff0c;使得开发人员可以使用 Lua 脚本来扩展 Nginx 的功能&#xff0c;这样就使得 OpenResty 可以非常方便地操作 Redis 和 MySQL…

leetcode_41.缺失的第一个正数

41. 缺失的第一个正数 题目描述&#xff1a;给你一个未排序的整数数组 nums &#xff0c;请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,0] 输出&#xff1a;3 解释…

SpringCloud学习笔记(二)Ribbon负载均衡、Nacos注册中心、Nacos与Eureka的区别

文章目录 4 Ribbon负载均衡4.1 负载均衡原理4.2 源码解读4.3 负载均衡策略4.3.1 内置的负载均衡策略4.3.2 自定义负载均衡策略4.3.2.1 方式一&#xff1a;定义IRule4.3.2.2 方式二&#xff1a;配置文件 4.4 饥饿加载 5 Nacos注册中心5.1 认识和安装Nacos5.2 服务注册到Nacos5.3…

powershell 注册全局热键——提升效率小工具

powershell 注册全局热键 01 前言 在处理一些重复工作问题的时候&#xff0c;想搞一个小工具&#xff0c;配合全局快捷键来提高效率。因为是Windows系统&#xff0c;想到C#&#xff0c;但是又不想用VS开发&#xff0c;因为那样不够灵活&#xff0c;没办法随时修改随时用&…

SpringCloud02(远程调用Feign,网关Gateway,配置中心Nacos)

目录 一、远程调用Feign【要会用】 1. Feign简介 1 什么是Feign 2 准备基础代码 2. Feign入门【重点】 步骤 实现 测试 3. Feign配置Ribbon 1 说明 2 配置 4. Feign配置日志 1 说明 2 步骤 5. Feign使用优化 1 说明 2 步骤 6. 小结 二、网关Gateway 1. 网关…

Microsoft Edge 使用心得与深度探索

Microsoft Edge 是微软推出的一款基于 Chromium 开源项目的网页浏览器&#xff0c;它继承了 Chrome 的许多特性&#xff0c;并添加了一些独特的功能&#xff0c;比如垂直标签页、集锦、沉浸式阅读器等。 Microsoft Edge 使用心得与深度探索 一、Microsoft Edge 简介 Microsof…

MySQL基础学习(待整理)

MySQL 简介 学习路径 MySQL 安装 卸载预安装的mariadb rpm -qa | grep mariadb rpm -e --nodeps mariadb-libs安装网络工具 yum -y install net-tools yum -y install libaio下载rpm-bundle.tar安装包&#xff0c;并解压&#xff0c;使用rpm进行安装 rpm -ivh \ mysql-communi…