是否可以将QString传递到QMessageBox

Is is possible to pass a QString to a QMessageBox?

本文关键字:QMessageBox QString 是否      更新时间:2023-10-16

我正在开发QT应用程序,用户将在其中向多个QLineEdits中输入信息。然后,他们将单击"提交"按钮。我希望出现一个QMessageBox,询问他们是想确认自己的信息(OK(还是取消。我希望消息框显示他们输入的信息,这样他们就可以检查信息是否准确。到目前为止,这是我的代码:

QString infoStr = (ui->lastEdit->text() + ", " + ui->firstEdit->text() + "n" + ui->addressEdit->text() + "n" + ui->cityEdit->text() + ", " + ui->stateBox->currentText() + " " + ui->zipEdit->text());

switch( QMessageBox::question(
                           this,
                           tr("Confirm"),
                        tr(infoStr&),
                           QMessageBox::Ok |
                           QMessageBox::Cancel ))
               {
                 case QMessageBox::Ok:
                   QMessageBox::information(this, "OK", "Confirmed");
                   break;
                 case QMessageBox::Cancel:
                   //Cancel
                   break;
               }

我是QT和C++的新手。任何建议都将不胜感激。

你应该读一本关于C++的书。为此,您只需要将字符串作为参数传递,翻译可能不是您想要的,&只是一个语法错误:

QMessageBox::question(
    this, tr("Confirm"), infoStr, QMessageBox::Ok | QMessageBox::Cancel
);