Qt应用开发(基础篇)——输入对话框 QInputDialog

一、前言

        QInputDialog类继承于QDialog,是一个简单方便的对话框,用于从用户获取单个值。

        对话框窗口 QDialog

         QInputDialog输入对话框带有一个文本标签、一个输入框和标准按钮。输入内容可以字符、数字和选项,文本标签用来告诉用户应该要输入什么。

        和其他的QDialog拓展类一样QInputDialog同样拥有多种静态函数创建的方式:getText()getMultiLineText()getInt()getDouble(),这些静态方法的使用方式都差不多。

bool ok;
QString text = QInputDialog::getText(this, tr("QInputDialog::getText()"),tr("User name:"), QLineEdit::Normal,QDir::home().dirName(), &ok);
if (ok && !text.isEmpty())textLabel->setText(text);

二、QInputDialog类

1、inputMode

        该属性表示对话框要输入的类型,分别有:

  • TextInput:文本输入
  • IntInput:整形输入
  • DoubleInput:浮点型输入
QInputDialog::InputMode inputMode() const
void setInputMode(QInputDialog::InputMode mode)

2、cancelButtonText

        该属性表示退出按钮的文本。

QString cancelButtonText() const
void setCancelButtonText(const QString &text)

3、okButtonText

        该属性表示确认按钮显示的文本内容。

QString okButtonText() const
void setOkButtonText(const QString &text)

4、comboBoxEditable

        该属性表示下拉框是否可编辑。

bool isComboBoxEditable() const
void setComboBoxEditable(bool editable)

5、comboBoxItems

        该属性表示下拉框选项。

QStringList comboBoxItems() const
void setComboBoxItems(const QStringList &items)

6、doubleDecimals

        该属性表示浮点数的精度,就是几位小数,inputMode需设置为DoubleInput

int doubleDecimals() const
void setDoubleDecimals(int decimals)

7、doubleMinimum

        该属性表示浮点型输入的最小值,inputMode需设置为DoubleInput

double doubleMinimum() const
void setDoubleMinimum(double min)

8、doubleMaximum

        该属性表示浮点型输入的最大值,inputMode需设置为DoubleInput

double doubleMaximum() const
void setDoubleMaximum(double max)

9、doubleStep

        该属性表示浮点型输入的步长,inputMode需设置为DoubleInput

double doubleStep() const
void setDoubleStep(double step)

10、doubleValue

        该属性表示浮点型输入的当前值,inputMode需设置为DoubleInput

double doubleValue() const
void setDoubleValue(double value)

11、intMaximum

        该属性表示整形输入的最大值,inputMode需设置为IntInput 。

int intMaximum() const
void setIntMaximum(int max)

12、intMinimum

        该属性表示整形输入的最小值,inputMode需设置为IntInput 。

int intMinimum() const
void setIntMinimum(int min)

13、intStep

        该属性表示整形输入的步长,inputMode需设置为IntInput 。

int intStep() const
void setIntStep(int step)

14、intStep

        该属性表示整形输入的当前值,inputMode需设置为IntInput 。

int intValue() const
void setIntValue(int value)

15、labelText

        该属性表示当前文本内容。

QString labelText() const
void setLabelText(const QString &text)

16、options

        该属性表示对话框的显示策略选项。

QInputDialog::InputDialogOptions options() const
void setOptions(QInputDialog::InputDialogOptions options)void setOption(QInputDialog::InputDialogOption option, bool on = true)
bool testOption(QInputDialog::InputDialogOption option) const
QInputDialog::InputDialogOption描述
NoButtons不显示确认和取消按钮
UseListViewForComboBoxItems使用QListView而不是不可编辑的QComboBox来显示用setComboBoxItems()设置的项
UsePlainTextEditForTextInput使用QPlainTextEdit进行多行文本输入

17、textEchoMode

        该属性表示文本回显模式,默认为Normal

QLineEdit::EchoMode textEchoMode() const
void setTextEchoMode(QLineEdit::EchoMode mode)
QLineEdit::EchoMode描述
Normal显示输入的字符
NoEcho不要显示任何东西。这可能适用于连密码长度都要保密的密码。
Password显示平台相关的密码掩码字符,而不是实际输入的字符。
PasswordEchoOnEdit在编辑时显示输入的字符,然后显示与Password相同的字符。

18、textValue

        该属性表示当前框显示的文本,inputMode需设置为 TextInput

QString textValue() const
void setTextValue(const QString &text)

19、公共函数

1)open

       将一个信号连接到由接收器和成员指定的插槽。特定的信号取决于成员中指定的参数。

  • 如果成员的第一个参数是QString,使用textValueSelected()
  • 如果member的第一个参数是int,使用intValueSelected()
  • 如果成员的第一个参数是双精度类型,使用doubleValueSelected()
  • 如果成员没有参数,则使用accept()。

        信号槽的连接在对话框关闭的时候会自动断开。

void open(QObject *receiver, const char *member)

20、信号

1)doubleValueChanged

        inputModeDoubleInput的时候,改变对话框内容都会触发此信号。

void doubleValueChanged(double value)

 2)doubleValueSelected

        inputModeDoubleInput的时候,用户通过接受对话框选择文本触发该信号。

void doubleValueSelected(double value)

 3)intValueChanged

        inputModeIntInput的时候,改变对话框内容都会触发此信号。

void intValueChanged(int value)

  4)intValueChanged

        inputModeIntInput的时候,用户通过接受对话框选择文本触发该信号。

 void intValueSelected(int value)

5)textValueChanged

        inputModeTextInput的时候,改变对话框内容都会触发此信号。

void textValueChanged(const QString &text)

 6)textValueChanged

        inputModeTextInput的时候,用户通过接受对话框选择文本触发该信号。

void textValueSelected(const QString &text)

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

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

相关文章

Linux服务——nginx的配置及模块

目录 一、nignx配置 1、nginx的配置文件 2、使用server语句块构建虚拟主机 3、alias别名 4、location语句 二、nginx模块 access模块 验证模块 自定义错误页面 日志存放位置 检测文件是否存在 长连接设置 ngx_http_autoindex_module 模块 三、nginx的高级配置 1、…

leetcode 823. 带因子的二叉树(dp+双指针+Long类型)

leetcode 823. 带因子的二叉树(dp双指针Long类型) 题目表述 给出一个含有不重复整数元素的数组 arr ,每个整数 arr[i] 均大于 1。 用这些整数来构建二叉树,每个整数可以使用任意次数。其中:每个非叶结点的值应等于它的两个子结点的值的乘积…

电商项目part10 高并发缓存实战

缓存的数据一致性 只要使用到缓存,无论是本地内存做缓存还是使用 redis 做缓存,那么就会存在数据同步的问题。 先读缓存数据,缓存数据有,则立即返回结果;如果没有数据,则从数据库读数据,并且把…

OTFS-ISAC通信最新进展

测试场景 Tx DD域帧结构导频区域 Rx DD域帧导频区域 原始星座图 信道估计及数据检测 经过MP算法后的星座图 误码率曲线

2023_Spark_实验二:IDEA安装及配置

一、下载安装包 链接:百度网盘 请输入提取码 所在文件夹:大数据必备工具--》开发工具(前端后端)--》后端 下载文件名称:ideaIU-2019.2.3.exe (喜欢新版本也可安装新版本,新旧版本会存在部分差异) IDEA …

【多线程案例】生产者消费者模型(堵塞队列)

文章目录 1. 什么是堵塞队列?2. 堵塞队列的方法3. 生产者消费者模型4. 自己实现堵塞队列 1. 什么是堵塞队列? 堵塞队列也是队列,故遵循先进先出的原则。但堵塞队列是一种线程安全的数据结构,可以避免线程安全问题,当队…

java反编译工具jd-gui使用

文章目录 一、JD-GUI介绍二、下载三、安装四、使用教程五、免责声明摘抄 一、JD-GUI介绍 JD-GUI是一个独立的图形实用程序,显示“.class”文件的Java源代码。 使用JD-GUI浏览重构的源代码,以便即时访问方法和字段。 二、下载 MAC安装包:ht…

HuggingFace 简介

HuggingFace 简介 0. HuggingFace 简介1. HuggingFace 官网地址2. HuggingFace 标准研发流程3. HuggingFace 工具集4. 编码工具4.1 编码工具介绍4.2 使用编码工具 5. 数据集工具5.1 数据集工具介绍5.2 使用数据集工具 6. 评价指标工具6.1 评价指标工具介绍6.2 使用评价指标工具…

Web of Science批量导出

目录 如何用Web of Science检索学术信息问题批量导出 Web of Science检索结果 如何用Web of Science检索学术信息 进入 Web of Science 检索页面: https://www.webofscience.com/wos/woscc/basic-search 根据需求填写过滤条件,点击 search 进入搜索详…

Vue2项目练手——通用后台管理项目第二节

Vue2项目练手——通用后台管理项目 路由限制重复跳转CommonAside.vue 顶部header组件搭建与样式修改右边用户菜单栏使用的组件图片CommonHeader.vue Vuex实现左侧折叠文件目录store/index.jsstore/tab.jsmain.jsCommonHeader.vueCommonAside.vueMain.vue 路由限制重复跳转 路由…

使用windeployqt和InstallShield打包发布Qt软件的流程

前言 Qt编译之后需要打包发布,并且发布给用户后需要增加一个安装软件,通过安装软件可以实现Qt软件的安装;用于安装软件的软件有很多,这里主要介绍InstallShield使用的流程; 使用windeployqt打包Qt编译后的程序 Qt程序…

操作系统清华同步笔记:定义概述+计算机内存和硬盘布局+启动流程顺序+中断、异常和系统调用

定义概述 从用户角度来看,操作系统是一个控制软件,用以管理应用程序,为应用程序提供服务,杀死应用程序等。从内部文件角度来看,操作系统是一个资源管理器,用以管理外设,分配资源。层次结构&…