QInputDialog Multiple Inputs 输入多个变量的对话框
生活随笔
收集整理的這篇文章主要介紹了
QInputDialog Multiple Inputs 输入多个变量的对话框
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
?
在之前的博客QInputDialog 使用方法中展示了利用QInputDialog可以快速通過(guò)一行代碼來(lái)生成一個(gè)輸入框,來(lái)獲取用戶的輸入值,那么如果我們希望獲取多個(gè)輸入值,怎么辦呢?那么此時(shí)用QInputDialog就沒(méi)法實(shí)現(xiàn)了,我們必須基于QDialog類重新寫一個(gè)類,可是只是一個(gè)簡(jiǎn)單的多值輸入框,我們又不想為了它而生成對(duì)應(yīng)的.cpp和.h,還有.ui文件,這樣太麻煩了,其實(shí)我們可以用代碼來(lái)添加輸入框和對(duì)應(yīng)的label。
?
?
如果我們想生成一個(gè)上圖一樣的多個(gè)輸入值的文本對(duì)話框,可以使用如下代碼:
?
QDialog dialog(this); QFormLayout form(&dialog); form.addRow(new QLabel("User input:")); // Value1 QString value1 = QString("Value1: "); QSpinBox *spinbox1 = new QSpinBox(&dialog); form.addRow(value1, spinbox1); // Value2 QString value2 = QString("Value2: "); QSpinBox *spinbox2 = new QSpinBox(&dialog); form.addRow(value2, spinbox2); // Add Cancel and OK button QDialogButtonBox buttonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel,Qt::Horizontal, &dialog); form.addRow(&buttonBox); QObject::connect(&buttonBox, SIGNAL(accepted()), &dialog, SLOT(accept())); QObject::connect(&buttonBox, SIGNAL(rejected()), &dialog, SLOT(reject()));// Process when OK button is clicked if (dialog.exec() == QDialog::Accepted) {// Do something here }?
參考資料:
http://stackoverflow.com/questions/17512542/getting-multiple-inputs-from-qinputdialog-in-qtcreator
?
轉(zhuǎn)載于:https://www.cnblogs.com/grandyang/p/6263929.html
總結(jié)
以上是生活随笔為你收集整理的QInputDialog Multiple Inputs 输入多个变量的对话框的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Django基础,Day3 - 编写 d
- 下一篇: Java字节码(.class文件)格式详