在 Qt 中使用 setText 将端口名写入标签

Write portname to a label using setText in Qt

我想尝试在 QT 中显示 portname 信息。代码在这里:

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 was not declared in this scope

那么,我该怎么做才能向 label 显示 portname 信息?

我犯了一个非常大的错误。分享这个问题后,我意识到了。

真正的代码应该是这样的:

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());部分必须在括号内。