Qt使用QInputDialog获取用户输入、自定义OK/Cancel按钮文字

参考官方文档,可以简单使用QInputDialog类的静态方法来弹出对话框获取用户输入,缺点是不能自定义按钮的文字,默认为OK和Cancel:

bool ok; int i = QInputDialog::getInt(this, tr("QInputDialog::getInteger()"), tr("Percentage:"), 25, 0, 100, 1, &ok); if (ok) qDebug()<<"User entered "<

【Qt使用QInputDialog获取用户输入、自定义OK/Cancel按钮文字】调用静态方法的效果图:
Qt使用QInputDialog获取用户输入、自定义OK/Cancel按钮文字
文章图片

自定义按钮文字的效果图
Qt使用QInputDialog获取用户输入、自定义OK/Cancel按钮文字
文章图片

方法是创建一个QinputDiag的对象,分别调用setOkButtonText()和setCancelButtonText()设置文字,再将对象的intValueSelected(int)信号connect到保存用户输入的槽函数即可
getChNo=new QInputDialog(this); getChNo->setOkButtonText(QString::fromLocal8Bit("确定")); getChNo->setCancelButtonText(QString::fromLocal8Bit("取消")); getChNo->setInputMode(QInputDialog::IntInput); getChNo->setIntRange(1,16); getChNo->setLabelText("Select a channel"); connect(getChNo,SIGNAL(intValueSelected(int)),this,SLOT(getChSelected(int))); getChNo->show(); //在需要获取用户输入的地方调用show()

    推荐阅读