字体对话框QFontDialog、消息对话框 QMessageBox和输入对话框 QInputDialog

本文主要是介绍字体对话框QFontDialog、消息对话框 QMessageBox和输入对话框 QInputDialog,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

界面如下

1. 字体对话框 QFontDialog

1.1 基本函数

 QFont getFont(bool *ok, const QFont &initial, QWidget *parent = nullptr, const QString &title = QString(), QFontDialog::FontDialogOptions options = FontDialogOptions())

返回值:QFont类型--字体

参数1:如果字体设置成功,ok返回true,否则返回false

参数2:设置初始字体

参数3:指定父对象

参数4:指定对话框标题

 QFont getFont(bool *ok, QWidget *parent = nullptr)

返回值:QFont类型--字体

参数1:如果字体设置成功,ok返回true,否则返回false

参数2:指定父对象

1.2 示例

QDialog

dialog.cpp

//字体对话框
void Dialog::on_pushButton_clicked()
{bool ok = false;//选择字体等信息,选择完后后保存在fontQFont font = QFontDialog::getFont(&ok,this);if(ok){qDebug()<<"字体设置成功"<<endl;}//这里可以将我们上次保存的font里的字体信息,作为再次设置字体的默认值
//    QFontDialog::getFont(&ok,font,this,"字体对话框");
}

点击

2. 消息对话框 QMessageBox

2.1 基本函数

关于类型

void about(QWidget *parent, const QString &title, const QString &text)  //about关于
void aboutQt(QWidget *parent, const QString &title = QString())

有争议类型

QMessageBox::StandardButton critical(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = Ok, QMessageBox::StandardButton defaultButton = NoButton) //critical有争议

信息提示类型

QMessageBox::StandardButton information(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = Ok, QMessageBox::StandardButton defaultButton = NoButton) //信息提示

返回值:QMessageBox::StandardButton返回按钮

参数1:指定父对象

参数2:指定标题

参数3:指定提示的文本

参数4:指定对话框中的按钮

参数5:设置默认按钮

有疑问类型

QMessageBox::StandardButton question(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = StandardButtons(Yes | No), QMessageBox::StandardButton defaultButton = NoButton)//有疑问

警告类型

 QMessageBox::StandardButton warning(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = Ok, QMessageBox::StandardButton defaultButton = NoButton)  //警告

2.2 示例

参数4  指定对话框中的按钮 的参数

QMessageBox::Ok           An"OK" button defined with the AcceptRole.
QMessageBox::Open        An "Open" button defined with the AcceptRole.
QMessageBox::Save        A "Save" button defined with the AcceptRole.
QMessageBox::Cancel        A "Cancel" button defined with the RejectRole.
QMessageBox::Close        A "Close" button defined with the RejectRole.
QMessageBox::Discard        A "Discard" or "Don't Save" button, depending on the platform, defined with the DestructiveRole.
QMessageBox::Apply        An "Apply" button defined with the ApplyRole.
QMessageBox::Reset        A "Reset" button defined with the ResetRole.
QMessageBox::RestoreDefaults        A "Restore Defaults" button defined with the ResetRole.
QMessageBox::Help            A "Help" button defined with the HelpRole.
QMessageBox::SaveAll        A "Save All" button defined with the AcceptRole.
QMessageBox::Yes            A "Yes" button defined with the YesRole.
QMessageBox::YesToAll        A "Yes to All" button defined with the YesRole.
QMessageBox::No            A "No" button defined with the NoRole.
QMessageBox::NoToAll        A "No to All" button defined with the NoRole.
QMessageBox::Abort        An "Abort" button defined with the RejectRole.
QMessageBox::Retry        A "Retry" button defined with the AcceptRole.
QMessageBox::Ignore        An "Ignore" button defined with the AcceptRole.
QMessageBox::NoButton        An invalid button.

QDialog

dialog.cpp

//消息对话框
void Dialog::on_pushButton_2_clicked()
{//弹出提示框,提示一些关于qt的东西
//    QMessageBox::aboutQt(this,"关于Qt的一些基本信息");//信息提示类型
//    QMessageBox::StandardButton btn=QMessageBox::information(this,"information","今天是星期五",QMessageBox::Ok|QMessageBox::Close);
//    if(btn==QMessageBox::Ok)
//    {
//        qDebug()<<"用户已经知晓"<<endl;//    }
//    else if(btn==QMessageBox::Close)
//    {
//        qDebug()<<"用户关闭"<<endl;
//    }//问题类型QMessageBox::StandardButton btn=QMessageBox::question(this,"question","你今天开心吗?",QMessageBox::Ok|QMessageBox::Close);if(btn==QMessageBox::Ok){qDebug()<<"我开心"<<endl;}else if(btn==QMessageBox::Close){qDebug()<<"不开心"<<endl;}}

3. 输入对话框 QInputDialog

3.1 基本函数

输入double类型

double getDouble(QWidget *parent, const QString &title, const QString &label, double value = 0, double min = -2147483647, double max = 2147483647, int decimals = 1, bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags(), double step = 1)

返回值:double,获取double类型的数据

参数1:指定父对象

参数2:指定标题

参数3:设置标签(提示的文本)

参数4:设置输入对话框显示的当前值

参数5:设置最小值

参数6:设置最大值

参数7:设置小数位数

参数8:设置输入是否成功的标志

参数9:设置window的标志

参数10:设置步进值

输入intleixing

int getInt(QWidget *parent, const QString &title, const QString &label, int value = 0, int min = -2147483647, int max = 2147483647, int step = 1, bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())

返回值:int 获取int 类型的数据

参数1:指定父对象

参数2:指定标题

参数3:设置标签(提示的文本)

参数4:设置输入对话框显示的当前值

参数5:设置最小值

参数6:设置最大值

参数7:设置步进值

参数8:设置输入是否成功的标志

参数9:设置window的标志

一些其他的类型的 函数原型

QString getItem(QWidget *parent, const QString &title, const QString &label, const QStringList &items, int current = 0, bool editable = true, bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags(), Qt::InputMethodHints inputMethodHints = Qt::ImhNone)QString getMultiLineText(QWidget *parent, const QString &title, const QString &label, const QString &text = QString(), bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags(), Qt::InputMethodHints inputMethodHints = Qt::ImhNone)QString getText(QWidget *parent, const QString &title, const QString &label, QLineEdit::EchoMode mode = QLineEdit::Normal, const QString &text = QString(), bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags(), Qt::InputMethodHints inputMethodHints = Qt::ImhNone)

3.2 示例

QDialog

dialog.cpp

//输入对话框
void Dialog::on_pushButton_3_clicked()
{bool ok=false;//输入double类型的数据double value=QInputDialog::getDouble(this,"输入对话框","请输入double类型的数据:",0.00,0.00,100.00,2,&ok,Qt::WindowFlags(),0.01);if(ok){qDebug()<<"value="<<value<<endl;}//上面的getDoble函数有的参数有默认参数,可以不写直接省略,如下
//    double value = QInputDialog::getDouble(this,"输入对话框","请输入double类型");//    qDebug()<<"value="<<value<<endl;}

这篇关于字体对话框QFontDialog、消息对话框 QMessageBox和输入对话框 QInputDialog的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/608956

相关文章

【测试】输入正确用户名和密码,点击登录没有响应的可能性原因

目录 一、前端问题 1. 界面交互问题 2. 输入数据校验问题 二、网络问题 1. 网络连接中断 2. 代理设置问题 三、后端问题 1. 服务器故障 2. 数据库问题 3. 权限问题: 四、其他问题 1. 缓存问题 2. 第三方服务问题 3. 配置问题 一、前端问题 1. 界面交互问题 登录按钮的点击事件未正确绑定,导致点击后无法触发登录操作。 页面可能存在

ActiveMQ—消息特性(延迟和定时消息投递)

ActiveMQ消息特性:延迟和定时消息投递(Delay and Schedule Message Delivery) 转自:http://blog.csdn.net/kimmking/article/details/8443872 有时候我们不希望消息马上被broker投递出去,而是想要消息60秒以后发给消费者,或者我们想让消息没隔一定时间投递一次,一共投递指定的次数。。。 类似

解决Office Word不能切换中文输入

我们在使用WORD的时可能会经常碰到WORD中无法输入中文的情况。因为,虽然我们安装了搜狗输入法,但是到我们在WORD中使用搜狗的输入法的切换中英文的按键的时候会发现根本没有效果,无法将输入法切换成中文的。下面我就介绍一下如何在WORD中把搜狗输入法切换到中文。

当你输入一个网址后都发生什么

原文:http://igoro.com/archive/what-really-happens-when-you-navigate-to-a-url/  作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务器,需求处理等等。 本文将更深入的研究当你输入一个网址的时候,后台到底发生了一件件什么样的事~

Java消息队列:RabbitMQ与Kafka的集成与应用

Java消息队列:RabbitMQ与Kafka的集成与应用 大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿! 在现代的分布式系统中,消息队列是实现系统间通信、解耦和提高可扩展性的重要组件。RabbitMQ和Kafka是两个广泛使用的消息队列系统,它们各有特点和优势。本文将介绍如何在Java应用中集成RabbitMQ和Kafka,并展示它们的应用场景。 消息队

vue2实践:第一个非正规的自定义组件-动态表单对话框

前言 vue一个很重要的概念就是组件,作为一个没有经历过前几代前端开发的我来说,不太能理解它所带来的“进步”,但是,将它与后端c++、java类比,我感觉,组件就像是这些语言中的类和对象的概念,通过封装好的组件(类),可以通过挂载的方式,非常方便的调用其提供的功能,而不必重新写一遍实现逻辑。 我们常用的element UI就是由饿了么所提供的组件库,但是在项目开发中,我们可能还需要额外地定义一

Kafka 分布式消息系统详细介绍

Kafka 分布式消息系统 一、Kafka 概述1.1 Kafka 定义1.2 Kafka 设计目标1.3 Kafka 特点 二、Kafka 架构设计2.1 基本架构2.2 Topic 和 Partition2.3 消费者和消费者组2.4 Replica 副本 三、Kafka 分布式集群搭建3.1 下载解压3.1.1 上传解压 3.2 修改 Kafka 配置文件3.2.1 修改zookeep

Android 友盟消息推送集成遇到的问题

友盟消息推送遇到的问题 集成友盟消息推送,步骤根据提供的技术文档接入便可。可是当你集成到项目中去的时候,可能并不是一帆风顺就搞定,因为你项目里面是可能集成了其他的sdk(比如支付宝,微信,七鱼等等三方的sdk)。那么这个时候,再加上友盟的消息推送sdk集成可能就会出现问题。 问题清单 友盟消息推送sdk和支付宝sdk冲突问题 后台配置了消息推送,也显示发送成功,但是手机没有收到消息通知

在 Qt Creator 中,输入 /** 并按下Enter可以自动生成 Doxygen 风格的注释

在 Qt Creator 中,当你输入 /** 时,确实会自动补全标准的 Doxygen 风格注释。这是因为 Qt Creator 支持 Doxygen 以及类似的文档注释风格,并且提供了代码自动补全功能。 以下是如何在 Qt Creator 中使用和显示这些注释标记的步骤: 1. 自动补全 Doxygen 风格注释 在 Qt Creator 中,你可以这样操作: 在你的代码中,将光标放在

消息队列的理解和应用场景

知乎上的一个通俗理解的优秀答案 by 祁达方 小红是小明的姐姐。 小红希望小明多读书,常寻找好书给小明看,之前的方式是这样:小红问小明什么时候有空,把书给小明送去,并亲眼监督小明读完书才走。久而久之,两人都觉得麻烦。 后来的方式改成了:小红对小明说「我放到书架上的书你都要看」,然后小红每次发现不错的书都放到书架上,小明则看到书架上有书就拿下来看。 书架就是一个消息队列,小红是生产者,小明是