C++ 如何从对话框中获取文本(正则表达式)

C++ 如何从对话框中获取文本(正则表达式),c++,qt,C++,Qt,我想知道是否有任何方法可以从QInputDialog获取格式化文本,也就是说,我想从Dialog获取带逗号的整数作为字符串。或者我们可以在文本模式下将正则表达式应用于对话框。如果没有,请建议更好的方法来实现这个场景 谢谢大家! 试试这个 QString result = QString::number(QInputDialog::getInt(this,"title","write"))+QString(",");//we enter for example 9 qDebug() <<

我想知道是否有任何方法可以从
QInputDialog
获取格式化文本,也就是说,我想从
Dialog
获取带逗号的整数作为字符串。或者我们可以在
文本模式下将正则表达式应用于
对话框
。如果没有,请建议更好的方法来实现这个场景

谢谢大家!

试试这个

QString result = QString::number(QInputDialog::getInt(this,"title","write"))+QString(",");//we enter for example 9
qDebug() << result; //we get "9,"
QString result=QString::number(QInputDialog::getInt(这是“title”,“write”))+QString(“,”)//我们输入示例9

qDebug()为什么不能使用
QInputDialog::getDouble
?根据您的第二个建议,如果我想要两个以上的数字,那么它将不会超过3个。相反,如果我使用QInputDialog::getText(),并对输入应用正则表达式,但我不知道如何应用正则表达式。或者这对我来说是不可能的QInputDialog@D'带inputDialog的JayPatil您不能这样做。有几种解决办法。您可以使用QLineEdit::getText()设置返回文本的格式(非常简单,如果您愿意,我可以向您展示它是如何工作的),但是如果您不想这样做,如果您想验证输入,您应该使用QLineEdit创建您自己的小对话框,设置为此lineEdit QRegExpValidator-(QLineEdit拥有setValidator方法),正如您所看到的,存在“短时”解决方案和“长期”解决方案。
QString result = QString::number(QInputDialog::getDouble(this,"title","write")).replace(".",",");//we enter for example 3.3 (3,3 in the inputDialog)
qDebug() << result;//result 3,3 (not 3.3)