Записать имя порта в метку, используя setText в Qt
Я хочу попробовать показать portname
информация в QT. Код здесь:
void MainWindow::on_pushButton_clicked()
{
foreach (const QSerialPortInfo &info, QSerialPortInfo::availablePorts())
{
qDebug() << "Name : " << info.portName();
// Example use QSerialPort
QSerialPort serial;
serial.setPort(info);
if (serial.open(QIODevice::ReadWrite))
serial.close();
}
ui->label->setText(info.portName());
}
Когда я компилирую этот код, появляется эта ошибка:
info
не был объявлен в этой области
Итак, что я могу сделать для показа portname
информация для label
?
1 ответ
Решение
Я сделал действительно большую ошибку. Я понял после обмена этим вопросом.
Истинный код должен быть таким:
void MainWindow::on_pushButton_clicked()
{
foreach (const QSerialPortInfo &info, QSerialPortInfo::availablePorts())
{
qDebug() << "Name : " << info.portName();
qDebug() << "Description : " << info.description();
qDebug() << "Manufacturer: " << info.manufacturer();
// Example use QSerialPort
QSerialPort serial;
serial.setPort(info);
if (serial.open(QIODevice::ReadWrite))
serial.close();
ui->label->setText(info.portName());
}
Это означает, что ui->label->setText(info.portName());
часть должна быть в скобках.