0

我想尝试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呢?

4

1 回答 1

0

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

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

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

于 2016-07-20T12:17:59.850 回答