QT基础:30---QInputDialog标准输入对话框

一、标准输入对话框的分类

QInputDialog有多种输入方式,下面介绍几种常用的

  • ①单行字符串输入
  • ②整数输入
  • ③浮点数输入
  • ④列表框选择输入
  • ⑤多行文本

二、单行字符串输入对话框(getText函数)

getText()函数:

  • 用于显示一个用于输入字符串的文本编辑框
  • 参数:1.父窗口指针 2.QInputDialog的标题 3.QInputDialog内部显示的文本 4.文本编辑框内容的显示方式 5.文本编辑框默认显示内容 6.一个标志,用来判断getText函数是否正常返回
  • 返回值:返回文本编辑框内的字符串
void Widget::on_btnInputString_clicked()
{
    QString dlgTitle=QStringLiteral("输入文本对话框");//对话框标题
    QString txtLabel=QStringLiteral("请输入文本:");//对话框Label显示内容
    QString defaultInput=QStringLiteral("新建文件.txt");//对话框内输入框的默认内容
    QLineEdit::EchoMode echoMode=QLineEdit::Normal;//输入框的文本内容为正常显示
    //QLineEdit::EchoMode echoMode=QLineEdit::Password;//输入框的文本内容为密码方式显示
    bool ok=false;
    QString text=QInputDialog::getText(this,dlgTitle,txtLabel,echoMode,defaultInput,&ok);
    if(ok && !text.isEmpty())
        ui->plainTextEdit->appendPlainText(text);
}

QT基础:30---QInputDialog标准输入对话框_第1张图片

三、整数输入对话框(getInt函数)

getInt函数:

  • 用于显示一个用于输入整数的编辑框,显示的是Spin Box控件
  • 参数:1.父窗口指针 2.QInputDialog的标题 3.QInputDialog内部显示的文本 4.Spin Box控件默认值 5.Spin Box控件最小值 6.Spin Box控件最大值 7.Spin Box控件单步值 8.一个标志,用来判断getInt函数是否正常返回
  • 返回值:返回Spin Box控件的整数值
void Widget::on_btnInputInt_clicked()
{
    QString dlgTitle=QStringLiteral("输入整数对话框");//对话框标题
    QString txtLabel=QStringLiteral("设置字体大小:");//对话框Label显示内容
    int defaultValue=ui->plainTextEdit->font().pointSize(); //得到plainTextEdit控件的字体大小
    int minValue=6,maxValue=50,stepValue=1; //设置整数编辑框的最小、大值,与单步改变值
    bool ok=false;
    int inputValue=QInputDialog::getInt(this,dlgTitle,txtLabel,defaultValue,minValue,maxValue,stepValue,&ok);
    if(ok){
        QFont font=ui->plainTextEdit->font();
        font.setPointSize(inputValue);
        ui->plainTextEdit->setFont(font);
    }
}

QT基础:30---QInputDialog标准输入对话框_第2张图片

四、浮点数输入对话框(getDouble函数)

getDouble函数:

  • 用于显示一个用于输入浮点数的编辑框,显示的是Double SpinBox控件
  • 参数:1.父窗口指针 2.QInputDialog的标题 3.QInputDialog内部显示的文本 4.Spin Box控件默认值 5.Spin Box控件最小值 6.Spin Box控件最大值 7.Spin Box控件显示的小数点位数控制 8.一个标志,用来判断getDouble函数是否正常返回
  • 返回值:返回Double SpinBox控件的浮点值
void Widget::on_btnInputFloat_clicked()
{
    QString dlgTitle=QStringLiteral("输入浮点数对话框");//对话框标题
    QString txtLabel=QStringLiteral("输入一个浮点数:");//对话框Label显示内容
    float defaultValue=3.13;//默认值
    float minValue=0,maxValue=10000;//最小、大值
    int decimals=2;//小数点后几位
    bool ok=false;
    float inputValue=QInputDialog::getDouble(this,dlgTitle,txtLabel,defaultValue,minValue,maxValue,decimals,&ok);
    if(ok){
        QString str=QString::asprintf("input a number:%.2f",inputValue);
        ui->plainTextEdit->appendPlainText(str);
    }
}

QT基础:30---QInputDialog标准输入对话框_第3张图片

五、下拉列表选择输入对话框(getItem函数)

getItem函数:

  • 用于显示一个ComboBox组件
  • 参数:1.父窗口指针 2.QInputDialog的标题 3.QInputDialog内部显示的文本 4.ComboBox组件的内容列表 5.默认显示ComboBox组件哪一个索引的内容 6.ComboBox组件是否可被编辑7.一个标志,用来判断getItem函数是否正常返回
  • 返回值:返回ComboBox组件选择的内容
void Widget::on_btnInputItem_clicked()
{
    QStringList items;//ComboBox控件的内容
    items<plainTextEdit->appendPlainText(text);
}

QT基础:30---QInputDialog标准输入对话框_第4张图片

你可能感兴趣的:(QT基础)