#include <QInputDialog>
......
bool isOK;
QString text = QInputDialog::getText(NULL, "Input Dialog",
"Please input your comment",
QLineEdit::Normal,
"your comment",
&isOK);
if(isOK) {
QMessageBox::information(NULL, "Information",
"Your comment is: <b>" + text + "</b>",
QMessageBox::Yes | QMessageBox::No,
QMessageBox::Yes);
}
![](https://images2018.cnblogs.com/blog/1324700/201805/1324700-20180531104343239-695157175.png)
static QString getText(QWidget *parent, const QString &title, const QString &label,
QLineEdit::EchoMode echo = QLineEdit::Normal,
const QString &text = QString(), bool *ok = 0, Qt::WindowFlags flags = 0);
- 第一个参数parent,也就是那个熟悉的父组件的指针;
- 第二个参数title就是对话框的标题;
- 第三个参数label是在输入框上面的提示语句;
- 第四个参数mode用于指明这个QLineEdit的输入模式,取值范围是QLineEdit::EchoMode,默认是Normal,也就是正常显示,你也可以声明为password,这样就是密码的输入显示了,具体请查阅API;
- 第五个参数text是QLineEdit的默认字符串;
- 第六个参数ok是可选的,如果非NLL,则当用户按下对话框的OK按钮时,这个bool变量会被置为true,可以由这个去判断用户是按下的OK还是Cancel,从而获知这个text是不是有意义;
- 第七个参数flags用于指定对话框的样式。