QInputDialog
Properties-属性

• cancelButtonText : QString
• comboBoxEditable : bool
• comboBoxItems : QStringList
• doubleDecimals : int
• doubleMaximum : double
• doubleMinimum : double
• doubleStep : double
• doubleValue : int
• inputMode : InputMode
• intMaximum : int
• intMinimum : int
• intStep : int
• intValue : int
• labelText : QString
• okButtonText : QString
• options : InputDialogOptions
• textEchoMode : QLineEdit::EchoMode
• textValue : QString

Public Functions-公共函数

l
QInputDialog(QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())
virtual ~QInputDialog()

QString cancelButtonText() const

QStringList comboBoxItems() const

int doubleDecimals() const

double doubleMaximum() const

double doubleMinimum() const

double doubleStep() const

double doubleValue() const

QInputDialog::InputMode inputMode() const

int intMaximum() const

int intMinimum() const

int intStep() const

int intValue() const

bool isComboBoxEditable() const

QString labelText() const

QString okButtonText() const

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

QInputDialog::InputDialogOptions options() const

void setCancelButtonText(const QString &text)

void setComboBoxEditable(bool editable)

void setComboBoxItems(const QStringList &items)

void setDoubleDecimals(int decimals)

void setDoubleMaximum(double max)

void setDoubleMinimum(double min)

void setDoubleRange(double min, double max)

void setDoubleStep(double step)

void setDoubleValue(double value)

void setInputMode(QInputDialog::InputMode mode)

void setIntMaximum(int max)

void setIntMinimum(int min)

void setIntRange(int min, int max)

void setIntStep(int step)

void setIntValue(int value)

void setLabelText(const QString &text)

void setOkButtonText(const QString &text)

void setOption(QInputDialog::InputDialogOption option, bool on = true)
void setOptions(QInputDialog::InputDialogOptions options)

void setTextEchoMode(QLineEdit::EchoMode mode)

void setTextValue(const QString &text)

bool testOption(QInputDialog::InputDialogOption option) const

QLineEdit::EchoMode textEchoMode() const

QString textValue() const

Static Public Members–静态公众成员
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)
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())
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)
Detailed Description-详细说明
输入值可以是字符串,数字或列表中的项目。 必须设置标签以告知用户他们应该输入什么。

提供了五个静态便利函数:getText(),getMultiLineText(),getInt(),getDouble()和getItem()。 所有功能都可以类似的方式使用,例如:
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);
如果用户单击“确定”,则将ok变量设置为true;否则,将其设置为true。 否则,将其设置为false。

“标准对话框”示例显示了如何使用QInputDialog以及其他内置的Qt对话框。

另请参见QMessageBox和“标准对话框”示例。
Member Type Documentation–会员类型文件
枚举 QInputDialog::InputDialogOption
flags QInputDialog::InputDialogOptions
该枚举指定了影响输入对话框外观的各种选项。
Constant Value Description
QInputDialog::NoButtons 0x00000001 Don’t display OK and Cancel buttons (useful for “live dialogs”).
QInputDialog::UseListViewForComboBoxItems 0x00000002 Use a QListView rather than a non-editable QComboBox for displaying the items set with setComboBoxItems().

QInputDialog::UsePlainTextEditForTextInput 0x00000004 Use a QPlainTextEdit for multiline text input. This value was introduced in 5.2.
这个枚举是在Qt 4.5中引入或修改的。

InputDialogOptions类型是QFlags 的typedef。 它存储InputDialogOption值的OR组合。

另请参阅选项,setOption()和testOption()。
枚举 QInputDialog::InputMode
该枚举描述了可以为对话框选择的不同输入模式。
Constant Value Description
QInputDialog::TextInput 0 Used to input text strings.
QInputDialog::IntInput 1 Used to input integers.
QInputDialog::DoubleInput 2 Used to input floating point numbers with double precision accuracy.

这个枚举是在Qt 4.5中引入或修改的。

另请参见inputMode。
Property Documentation 物业文件
cancelButtonText : QString

此属性保存用于取消对话框的按钮的文本

此属性在Qt 4.5中引入。

访问功能:
QString cancelButtonText() const
void setCancelButtonText(const QString &text)
comboBoxEditable : bool
此属性保存输入对话框中使用的组合框是否可编辑

此属性在Qt 4.5中引入。

访问功能:
bool isComboBoxEditable() const
void setComboBoxEditable(bool editable)
comboBoxItems : QStringList
此属性保存输入对话框的组合框中使用的项目

此属性在Qt 4.5中引入。

访问功能:
QStringList comboBoxltems() const
void setComboBoxItems(const QStringList &items)
doubleDecimals : int
以小数设置双旋转框的精度

此属性在Qt 4.5中引入。

访问功能:
int doubleDecimals() const
void setDoubleDecimals(int decimals)
See also QDoubleSpinBox::setDecimals().
doubleMaximum : double
此属性保存接受为输入的最大双精度浮点值

仅当在DoubleInput模式下使用输入对话框时,此属性才相关。

此属性在Qt 4.5中引入。
访问功能:
double doubleMaximum() const
void setDoubleMaximum(double max)

doubleStep : double
此属性保持增加和减少双精度值的步骤

仅当在DoubleInput模式下使用输入对话框时,此属性才相关。

此属性在Qt 5.10中引入。

访问功能:
double doubleStep() const
void setDoubleStep(double step)
doubleValue : int
此属性保存接受为输入的当前双精度浮点值

仅当在DoubleInput模式下使用输入对话框时,此属性才相关。

此属性在Qt 4.5中引入。
访问功能:
double doubleValue() const
void setDoubleValue(double value)
通知者信号:
void doubleValueChanged(double value)
inputMode : InputMode
此属性保存用于输入的模式

此属性有助于确定使用哪个窗口小部件在对话框中输入输入。

此属性在Qt 4.5中引入。

访问功能:
QInputDialog::InputMode inputMode() const
void setInputMode(QInputDialog::InputMode mode)
intMaximum : int
此属性保存接受为输入的最大整数值

仅当在IntInput模式下使用输入对话框时,此属性才相关。

此属性在Qt 4.5中引入。

访问功能:
int intMaximum() const
void setIntMaximum(int max)
intMinimum : int
此属性保存接受作为输入的最小整数值

仅当在IntInput模式下使用输入对话框时,此属性才相关。

此属性在Qt 4.5中引入。

访问功能:
int intMinimum() const
void setIntMinimum(int min)
intStep : int
此属性保持增加和减少整数值的步骤

仅当在IntInput模式下使用输入对话框时,此属性才相关。

此属性在Qt 4.5中引入。

访问功能:
int intStep() const
void setIntStep(int step)
intValue : int
此属性保存接受为输入的当前整数值

仅当在IntInput模式下使用输入对话框时,此属性才相关。

此属性在Qt 4.5中引入。

访问功能:
int intValue() const
void setIntValue(int value)
通知者信号:
void intValueChanged(int value)
labelText : QString
此属性保存标签的文本,该文本描述需要输入的内容

此属性在Qt 4.5中引入。

访问功能:
QString labelText() const
void setLabelText(const QString &text)
okButtonText : QString
此属性保存用于接受对话框中条目的按钮的文本

此属性在Qt 4.5中引入。

访问功能:
QString okButtonText() const
void setOkButtonText(const QString &text)
options : InputDialogOptions
此属性包含影响对话框外观的各种选项

默认情况下,所有选项都是禁用的。

此属性在Qt 4.5中引入。

访问功能:
QInputDialog::InputDialogOptions options() const
void setOptions(QInputDialog::InputDialogOptions options)
另外请见 setOption() 和 testOption().
textEchoMode : QLineEdit::EchoMode
此属性保存文本值的回显模式
仅当在TextInput模式下使用输入对话框时,此属性才相关。
此属性在Qt 4.5中引入。
访问功能:
QLineEdit::EchoMode textEchoMode() const
void setTextEchoMode(QLineEdit::EchoMode mode)
textValue : QString
此属性保存输入对话框的文本值
仅当在TextInput模式下使用输入对话框时,此属性才相关。
此属性在Qt 4.5中引入。
访问功能:
QString textValue() const
void setTextValue(const QString &text)
通知者信号:
void textValueChanged(const QString &text)

Member Function Documentation
会员功能文档
QInputDialog::QInputDialog(QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())
使用给定的parent和window标志构造一个新的输入对话框。
此功能在Qt 4.5中引入。
void QInputDialog::doubleValueChanged(double value) [signal]
每当对话框中的double值更改时,都会发出此信号。 当前值由值指定。
仅当在DoubleInput模式下使用输入对话框时,此信号才有意义。
注意:属性doubleValue的通知程序信号。
void QInputDialog::doubleValueSelected(double value) [signal]
每当用户通过接受对话框选择双精度值时,都会发出此信号。 例如,通过单击“确定”按钮。 所选值由值指定。
仅当在DoubleInput模式下使用输入对话框时,此信号才有意义。

void QInputDialog::intValueChanged(int value) [signal]
每当对话框中的整数值更改时,都会发出此信号。 当前值由值指定。
仅当在IntInput模式下使用输入对话框时,此信号才有意义。
注意:属性intValue的通知程序信号。
void QInputDialog::intValueSelected(int value) [signal]
每当用户通过接受对话框选择整数值时,都会发出此信号。 例如,通过单击“确定”按钮。 所选值由值指定。
仅当在IntInput模式下使用输入对话框时,此信号才有意义。
void QInputDialog::textValueChanged(const QString&text) [signal]
每当对话框中的文本字符串更改时,都会发出此信号。 当前字符串由文本指定。

仅当在TextInput模式下使用输入对话框时,此信号才有意义。

注意:属性textValue的通知程序信号。
void QInputDialog::textValueSelected(const QString &text) [signal]
每当用户通过接受对话框选择文本字符串时,都会发出此信号。 例如,通过单击“确定”按钮。 所选字符串由文本指定。
仅当在TextInput模式下使用输入对话框时,此信号才有意义。
QInputDialog::~QInputDialog() [virtual]
销毁输入对话框。
此功能在Qt 4.5中引入。
void QInputDialog::done(int result) [override virtual]
重新实现:QDialog :: done(int r)。

关闭对话框并将其结果代码设置为result。 如果此对话框与exec()一起显示,则done()导致本地事件循环完成,并且exec()返回结果。

另请参见QDialog :: done()。
double QInputDialog::getDouble(QWidget *parent, [static]
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)
静态便利功能,用于从用户那里获取浮点数。

title是显示在对话框标题栏中的文本。 标签是显示给用户的文本(应该说应该输入什么)。 value是将行编辑设置为的默认浮点数。 最小值和最大值是用户可以选择的最小值和最大值。 小数位是该数字可能具有的最大小数位数。 step是当用户按下箭头按钮以增加或减少值时值改变的量。

如果ok为非null,则如果用户按OK,则* ok将设置为true;如果用户按Cancel,则将* ok设置为false。 对话框的父级是父级。 该对话框将是模式对话框,并使用小部件标志。

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

使用如下静态函数:
bool ok;
double d = QInputDialog::getDouble(this, tr(“QInputDialog::getDouble()”),
tr(“Amount:”), 37.56, -10000, 10000, 2, &ok,
Qt::WindowFlags(), 1);
if (ok)
doubleLabel->setText(QString(“$%1”).arg(d));

另请参见getText(), getInt(), getItem(), 和 getMultiLineText().
int QInputDialog::getInt(QWidget *parent, const QString&title, const QString &label, int value = 0, int min = [static] -2147483647, int max = 2147483647, int step = 1, bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())
静态便利函数,用于从用户获取整数输入。

title是显示在对话框标题栏中的文本。 标签是显示给用户的文本(应该说应该输入什么)。 value是Spinbox设置为的默认整数。 最小值和最大值是用户可以选择的最小值和最大值。 step是当用户按下箭头按钮以增加或减少值时值改变的量。

如果ok为非空值,那么* ok将被设置为true(如果用户按下OK),而false将被设置为false(如果用户按下Cancel)。 对话框的父级是父级。 该对话框将是模式对话框,并使用小部件标志。

成功时,此函数返回用户输入的整数; 如果失败,它将返回初始值。

使用如下静态函数:
bool ok;
int i = QInputDialog::getInt(this, tr(“QInputDialog::getInt()”),
tr(“Percentage:”), 25, 0, 100, 1, &ok);
if (ok)
integerLabel->setText(tr(“%1%”).arg(i));

此功能在Qt 4.5中引入。
另请参见getText(), getDouble(), getItem(), 和 getMultiLineText().
QString QInputDialog::getItem(QWidget *parent, const QString &title, const QString &label, [static] const QStringList&items, int current = 0, bool editable = true, bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags(), Qt::InputMethodHintsinputMethodHints = Qt::ImhNone)
静态便利功能,使用户可以从字符串列表中选择一项。

title是显示在对话框标题栏中的文本。 标签是显示给用户的文本(应该说应该输入什么)。 items是插入到组合框中的字符串列表。 当前是应该作为当前项目的项目编号。 inputMethodHints是在组合框可编辑且输入法处于活动状态时将使用的输入法提示。

如果editable为true,则用户可以输入自己的文本。 否则,用户只能选择现有项目之一。

如果ok为非空值,那么* ok将被设置为true(如果用户按下OK),而false将被设置为false(如果用户按下Cancel)。 对话框的父级是父级。 该对话框将是模式对话框,并使用小部件标志。

此函数返回当前项目的文本,或者,如果editable为true,则返回组合框的当前文本。

使用如下静态函数:
QStringList items;
items << tr("Spring") << tr("Summer") << tr("Fall") <

setText(item);

另请参见getText(), getInt(), getDouble(), 和 getMultiLineText().
QString QInputDialog::getMultiLineText(QWidget parent, const QString &title, const QString &label, const QString&text = QString(), bool *ok = nullptr, Qt::WindowFlags flags = [static] Qt::WindowFlags(), Qt::InputMethodHints inputMethodHints = Qt::ImhNone)
静态便利函数,用于从用户那里获取多行字符串。
title是显示在对话框标题栏中的文本。 标签是显示给用户的文本(应该说应该输入什么)。 文本是放置在纯文本编辑中的默认文本。 inputMethodHints是输入方法提示,如果输入方法处于活动状态,则将在编辑小部件中使用。
如果ok为非空值,那么
ok将被设置为true(如果用户按下OK),而false将被设置为false(如果用户按下Cancel)。 对话框的父级是父级。 该对话框将是模式对话框,并使用指定的窗口小部件标志。
如果接受对话框,则此函数返回对话框的纯文本编辑中的文本。 如果对话框被拒绝,则返回一个空QString。
使用如下静态函数:
bool ok;
QString text = QInputDialog::getMultiLineText(this, tr(“QInputDialog::getMultiLineText()”),
tr(“Address:”), “John Doe\nFreedom Street”, &ok);
if (ok && !text.isEmpty())
multiLineTextLabel->setText(text);

此功能在Qt 5.2中引入。

另请参见getInt(),getDouble(),getItem()和getText()。
QString QInputDialog::getText(QWidget *parent, const QString &title, [static] const QString &label, QLineEdit::EchoModemode = QLineEdit::Normal, const QString &text = QString(), bool *ok = nullptr, Qt::WindowFlags flags = Qt::WindowFlags(), Qt::InputMethodHints inputMethodHints = Qt::ImhNone)
静态便利函数,用于从用户那里获取字符串。

title是显示在对话框标题栏中的文本。 标签是显示给用户的文本(应该说应该输入什么)。 文本是放置在行编辑中的默认文本。 模式是线路编辑将使用的回显模式。 inputMethodHints是输入方法提示,如果输入方法处于活动状态,则将在编辑小部件中使用。

如果ok为非空值,那么* ok将被设置为true(如果用户按下OK),而false将被设置为false(如果用户按下Cancel)。 对话框的父级是父级。 该对话框将是模式对话框,并使用指定的窗口小部件标志。

如果对话框被接受,则此函数返回对话框行编辑中的文本。 如果对话框被拒绝,则返回一个空QString。

使用如下静态函数:
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);

另请参见getInt(), getDouble(), getItem(), 和 getMultiLineText().
QSize QInputDialog::minimumSizeHint() const [override virtual]
重新实现:QDialog :: minimumSizeHint()常量。
void QInputDialog::open(QObject *receiver, const char *member)
此功能将其信号之一连接到接收器和成员指定的插槽。 具体信号取决于成员中指定的参数。 这些是:

如果成员的第一个参数具有QString,则为textValueSelected()。
intValueSelected(),如果成员的第一个参数具有int值。
doubleValueSelected(),如果成员的第一个参数为double。
如果成员没有参数,则为acceptd()。
关闭对话框后,信号将从插槽中断开。

此功能在Qt 4.5中引入。
void QInputDialog::setDoubleRange(double min, double max)
设置在DoubleInput模式下使用时对话框接受的双精度浮点值的范围,其最小值和最大值分别由min和max指定。
void QInputDialog::setIntRange(int min, int max)
设置在IntInput模式下使用时对话框可接受的整数值范围,最小值和最大值分别由min和max指定。

void QInputDialog::setOption(QInputDialog::InputDialogOption option, bool on = true)
如果on为true,则将给定选项设置为启用。 否则,清除给定的选项。

另请参见options和testOption()。

void QInputDialog::setVisible(bool visible) [override virtual]
重新实现:QDialog :: sizeHint()常量。
bool QInputDialog::testOption(QInputDialog::InputDialogOption option) const
如果启用给定选项,则返回true;否则,返回true。 否则,返回false。

另请参见options和setOption()。

Leave a Comment