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

2023-11-06

一、前言

        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)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Qt应用开发(基础篇)——输入对话框 QInputDialog 的相关文章

随机推荐

  • 使用Javascript(js)技术实现动态时钟效果—北大青鸟

    效果图 代码
  • linux命令大全 find

    参考 linux命令大全 程序员工具箱 1 命令名 find 在某个目录下搜索文件 2 使用样例 在 path 目录下递归找到名字后缀为 access log 的文件 find path name access log 在 path 目录下
  • pandas删除索引具体位置的数据

    import pandas as pd import numpy as np 想删除索引是3 和4的数据 df pd DataFrame 0 我 1 你 2 她 3 我们 5 你们 columns list AB df t df loc d
  • 浪潮 服务器数据安全管理系统,浪潮SSC运维安全管控系统

    浪潮SSC运维安全管控系统提供精细管控 运维无忧的数据中心安全解决方案 统一账号 数据中心内所有各种服务器 数据库 网络设备 中间件 业务系统的账号作为从账号 浪潮SSC的账号作为主账号 进入数据中心的每个运维人员对应一个主账号 主账号用来
  • 卷积:kernel size/padding/stride

    卷积的原理 卷积尺寸变化 输出尺寸 输入尺寸 filter尺寸 2 padding stride 1 宽和高都是这么计算的 输入图片大小为200 200 依次经过一层卷积 kernel size 5 5 padding 1 stride 2
  • 带你解决java内存爆炸和CPU100%的问题

    文章目录 java 内存爆炸 CPU100 问题分析 定位与解决 背景 堆内存溢出 问题思路整理 堆外内存分析 问题思路整理 CPU 100 问题排查 引发原因 java 内存爆炸 CPU100 问题分析 定位与解决 背景 今天给java开
  • Unity半透明物体+投射阴影+接受阴影

    前置 水流动效果 透明 物体实现半透明有透明度测试和透明度混合两种方式 不同方式接受和投射阴影的方式有所差别 透明度测试阴影效果图 正方体的阴影一部分打在了水平面上 一部分在白色平面上 由于透明度测试使得水平面的右半部分为完全透明 所以白色
  • CNVD证书获得及要求

    CNVD证书获得及要求 前言 CNVD证书 简介 要求 挖掘思路 定位目标 搜索案例 漏洞类型 证书展示 文件上传 逻辑漏洞 弱口令 ps 前言 4月份利用闲时时间对学校资产进行了一波渗透测试 发现蛮多的漏洞 这其中就发现了这次证书的漏洞厂
  • 2020-09-10 nginx 流转发 ftp 服务器报错: GnuTLS 错误 -110

    ginx 流转发 ftp 服务器报错 GnuTLS 错误 110 报错信息 filezilla ftp tls 连接 ftp 服务器没问题 访问 nginx 服务 转发到ftp 服务器会报错 如下 错误 GnuTLS 错误 110 位于 g
  • 异常值处理

    异常值处理是数据预处理中的一个重要步骤 随着大数据时代的到来 异常值处理也越来越重要 本文主要总结了一些常用的判断异常值的方法 1 3 准则 要求数据服从正态分布 认为大于 3 或小于 3 的实验数据值作为异常值 其中 为数据均值 为数据标
  • vscode 导入python库_vscode 导入的三方库没有代码提示的问题

    发现在vscode里面 关于tensorflow的内容都不提示 需要一个字母一个字母的敲 在tensorflow包下的 init py文件中定义了一个contrib变量表示tensorflow contrib包下的内容 但是tensorfl
  • QQ空间扫码登录协议 Java

    运行环境 服务器 Centos7 6 Docker Mysql 后端 IDEA2019 3 3 JDK1 8 Maven lombok okhttp SpringBoot fastjson log4j 前端 D2Admin Axios El
  • 为你精选86个本科软件工程专业的计算机毕业设计项目推荐

    对于即将步入毕业设计阶段的计算机专业学生们 找到合适的题目和完成项目的压力也许正在困扰着你 今天 我们会给大四的学生分享一些毕业设计项目 希望可以给正在苦恼的你提供一些帮助 一 成品列表 以下所有springboot框架项目的源码博主已经打
  • 36_windows环境debug Nginx 源码-使用 VSCode 和WSL

    文章目录 配置 WSL 编译 Nginx VSCode 安装插件 launch json 配置 WSL sudo apt get y install gcc cmake sudo apt get y install pcre sudo ap
  • Pandas知识点-逻辑运算

    Pandas知识点 逻辑运算 逻辑运算在代码中基本是必不可少的 Pandas的逻辑运算与Python基础语法中的逻辑运算存在一些差异 所以本文介绍Pandas中的逻辑运算符和逻辑运算 本文使用的数据来源于网易财经 具体下载方法可以参考 ht
  • RuntimeError: CUDA error: initialization error when calling `cusparseCreate(handle)

    原代码 tf swingbase arm torch matmul torch inverse tf base upper torch inverse tf uppernew base 改成 tf swingbase arm torch m
  • vscode中终端字体设置

    整理了一些vscode中终端字体及各种样式的设定 废话不多说 看下面 把下面的粘贴到 setting json 中 根据个人需要可以更改样式 瞎搞的 大部分应该准确 自己调试出来的 workbench colorCustomizations
  • 沈阳师范大学C++ pta第三章 指针引用

    沈阳师范大学C pta第三章 指针引用 判断题 1 字符串常量实质上是一个指向该字符串首字符的指针常量 T 2 定义一个指针数组并初始化赋值若干个字符串常量 则指针数组并不存放这些字符串 而仅仅指向各个字符串 T 3 指向整数指针的指针与指
  • idea 配置详解 (二) 之editor 详解

    3 File Settings Editor 3 1 File Settings Editor General 3 1 1 File Settings Editor General Auto Import 3 1 2 File Settin
  • Qt应用开发(基础篇)——输入对话框 QInputDialog

    一 前言 QInputDialog类继承于QDialog 是一个简单方便的对话框 用于从用户获取单个值 对话框窗口 QDialog QInputDialog输入对话框带有一个文本标签 一个输入框和标准按钮 输入内容可以字符 数字和选项 文本