返回介绍

QInputDialog类

发布于 2019-10-04 15:00:50 字数 5501 浏览 946 评论 0 收藏 0

QInputDialog类提供了从用户那里得到一个单一值的简单方便的对话框。 详情请见……

#include <qinputdialog.h>

继承了QDialog。

所有成员函数的列表。

静态公有成员

  • QString getText ( constQString&caption, constQString&label, QLineEdit::EchoModemode = QLineEdit::Normal, constQString&text = QString::null, bool*ok = 0, QWidget*parent = 0, constchar*name = 0 )
  • int getInteger ( constQString&caption, constQString&label, intnum = 0, intfrom = -2147483647, intto = 2147483647, intstep = 1, bool*ok = 0, QWidget*parent = 0, constchar*name = 0 )
  • double getDouble ( constQString&caption, constQString&label, doublenum = 0, doublefrom = -2147483647, doubleto = 2147483647, intdecimals = 1, bool*ok = 0, QWidget*parent = 0, constchar*name = 0 )
  • QString getItem ( constQString&caption, constQString&label, constQStringList&list, intcurrent = 0, booleditable = TRUE, bool*ok = 0, QWidget*parent = 0, constchar*name = 0 )

详细描述

QInputDialog类提供了从用户那里得到一个单一值的简单方便的对话框。

输入值可以是字符串、数字或者列表中的一项。必须设置标签来告诉用户应该输入什么。

这里有四个方便的函数被提供:getText()、getInteger()、getDouble()和getItem()。所有这些函数都可以按相似的方式使用,例如:

  bool ok = FALSE;
  QString text = QInputDialog::getText(
                    tr( "Application name" ),
                    tr( "Please enter your name" ),
                    QLineEdit::Normal, QString::null, &ok, this );
  if ( ok && !text.isEmpty() )
      ;// 用户输入一些东西并且按下OK
  else
      ;// 用户不输入任何东西或者按下Cancel
  

Input Dialogs

也可以参考对话框类。


成员函数文档

double QInputDialog::getDouble ( constQString&caption, constQString&label, doublenum = 0, doublefrom = -2147483647, doubleto = 2147483647, intdecimals = 1, bool*ok = 0, QWidget*parent = 0, constchar*name = 0 ) [静态]

从用户那里得到浮点数的静态方便函数。caption是这个对话框在标题栏显示的文本。label是显示给用户的文本(它应该告诉用户应该输入什么)。num是这个行编辑中所要设置的默认的浮点数值。fromto是最小值和最大值,用户应该在这个范围内进行选择并且decimals小数点后面小数的最大位数。

对话框的父对象为parent、名称为name。如果ok参数为非零,则如果用户点击OK,*ok被设置为真,并且如果用户点击Cancel,就被设置为假。对话框将是模式的。

这个函数返回用户输入的浮点数。

像这样使用这个静态函数:

  bool ok = FALSE;
  double res = QInputDialog::getDouble(
                tr( "Application name" ),
                tr( "Please enter a decimal number" ),
                33.7, 0, 1000, 2, &ok, this );
  if ( ok )
      ;// 用户输入一些东西并且按下OK
  else
      ;// 用户按下Cancel
  

int QInputDialog::getInteger ( constQString&caption, constQString&label, intnum = 0, intfrom = -2147483647, intto = 2147483647, intstep = 1, bool*ok = 0, QWidget*parent = 0, constchar*name = 0 ) [静态]

从用户那里得到整数的静态方便函数。caption是这个对话框在标题栏显示的文本。label是显示给用户的文本(它应该告诉用户应该输入什么)。num是微调框中所要设置的默认整数。fromto是最小值和最大值,用户应该在这个范围内进行选择并且step是用户通过点击上下箭头增加或者减少的数值。

对话框的父对象为parent、名称为name。如果ok参数为非零,则如果用户点击OK,*ok被设置为真,并且如果用户点击Cancel,就被设置为假。对话框将是模式的。

这个函数返回用户输入的整数。

像这样使用这个静态函数:

  bool ok = FALSE;
  int res = QInputDialog::getInteger(
                tr( "Application name" ),
                tr( "Please enter a number" ), 22, 0, 1000, 2, &ok, this );
  if ( ok )
      ;// 用户输入一些东西并且按下OK
  else
      ;// 用户按下Cancel
  

QString QInputDialog::getItem ( constQString&caption, constQString&label, constQStringList&list, intcurrent = 0, booleditable = TRUE, bool*ok = 0, QWidget*parent = 0, constchar*name = 0 ) [静态]

让用户从一个字符串列表中选择一项的静态方便函数。caption是这个对话框在标题栏显示的文本。label是显示给用户的文本(它应该告诉用户应该输入什么)。list是插入到组合框中的字符串列表,并且current是指哪一项为当前项。如果editable为真,则用户可以输入自己的文本,如果editable为假,则用户只能选择已有的项中的一项。

对话框的父对象为parent、名称为name。如果ok参数为非零,则如果用户点击OK,*ok被设置为真,并且如果用户点击Cancel,就被设置为假。对话框将是模式的。

这个函数返回当前项的文本,或者如果editable为真,就是组合框的当前文本。

像这样使用这个静态函数:

  QStringList lst;
  lst << "First" << "Second" << "Third" << "Fourth" << "Fifth";
  bool ok = FALSE;
  QString res = QInputDialog::getItem(
                    tr( "Application name" ),
                    tr( "Please select an item" ), lst, 1, TRUE, &ok, this );
  if ( ok )
      ;// 用户选择一项并且按下OK
  else
      ;// 用户按下Cancel
  

QString QInputDialog::getText ( constQString&caption, constQString&label, QLineEdit::EchoModemode = QLineEdit::Normal, constQString&text = QString::null, bool*ok = 0, QWidget*parent = 0, constchar*name = 0 ) [静态]

从用户那里得到一个字符串的静态方便函数。caption是这个对话框在标题栏显示的文本。label是显示给用户的文本(它应该告诉用户应该输入什么)。text是放置在行编辑中的默认文本。mode是行编辑的回显模式。

对话框的父对象为parent、名称为name。如果ok参数为非零,则如果用户点击OK,*ok被设置为真,并且如果用户点击Cancel,就被设置为假。对话框将是模式的。

这个函数返回用户在行编辑中输入的文本。如果没有输入,就返回空字符串。

像这样使用这个静态函数:

  bool ok = FALSE;
  QString text = QInputDialog::getText(
                    tr( "Application name" ),
                    tr( "Please enter your name" ),
                    QLineEdit::Normal, QString::null, &ok, this );
  if ( ok && !text.isEmpty() )
      ;// 用户输入一些东西并且按下OK
  else
      ;// 用户不输入任何东西或者按下Cancel
  

实例:network/ftpclient/ftpmainwindow.cpp。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文