如何在qt中接受动态输入

如何在qt中接受动态输入,qt,input,Qt,Input,Hi在Linux中,如果我们发出命令SU,它会询问密码,如果我们输入正确的密码,它将登录到超级用户,以类似的方式,我如何通过Qt应用程序来实现这一点 要使用什么类,可以这样做吗?然后可以使用保存第一个字符串的方法连接信号,使用更改回显模式并将其设置为QLineEdit::Password,然后当用户第二次输入时,他将看到他写的内容******,当他按下enter键时,您可以使用与returnPressed信号连接的相同方法获取密码 void MainWindow::on_lineEdit_ret

Hi在Linux中,如果我们发出命令SU,它会询问密码,如果我们输入正确的密码,它将登录到超级用户,以类似的方式,我如何通过Qt应用程序来实现这一点

要使用什么类,可以这样做吗?

然后可以使用保存第一个字符串的方法连接信号,使用更改回显模式并将其设置为QLineEdit::Password,然后当用户第二次输入时,他将看到他写的内容******,当他按下enter键时,您可以使用与returnPressed信号连接的相同方法获取密码

void MainWindow::on_lineEdit_returnPressed()
{
  if (ui->lineEdit->echoMode() == QLineEdit::Password) {
    _pwd = ui->lineEdit->text();
    ui->lineEdit->setEchoMode(QLineEdit::Normal);
    // your job after getting the password here
  }
  else {
    _loggin = ui->lineEdit->text();
    ui->lineEdit->setEchoMode(QLineEdit::Password);
  }
}

我建议您使用对话框窗口获取密码。下面是一个例子:嗨,我可以使用任何gui应用程序登录到root吗?比如说Qt,如果我在Qt应用程序中运行system(su),如果我通过ui输入我的root密码,我可以登录吗。。。?如果可能,我应该在哪里以及如何发送密码..?出于安全原因,su/sudo/etc无法在命令中发送密码。所以你不能做像sudo-u-p这样的事情。但是,您可以以root用户身份运行qt应用程序。最近的方法是使用sudo的-S并使用pipe2更改standart输入的TTY。