QSerialPortInfo 类

提供有关现有串行端口的详细信息。 更多...

头文件 #include <QSerialPortInfo>
CMakefind_package(Qt6 REQUIRED COMPONENTS SerialPort)
target_link_libraries(mytarget PRIVATE Qt6::SerialPort)
qmakeQT += serialport

公共函数

QSerialPortInfo()
QSerialPortInfo(const QSerialPort &port)
QSerialPortInfo(const QString &name)
QSerialPortInfo(const QSerialPortInfo &other)
~QSerialPortInfo()
QStringdescription() const
boolhasProductIdentifier() const
boolhasVendorIdentifier() const
boolisNull() const
QStringmanufacturer() const
QStringportName() const
quint16productIdentifier() const
QStringserialNumber() const
voidswap(QSerialPortInfo &other)
QStringsystemLocation() const
quint16vendorIdentifier() const
QSerialPortInfo &operator=(const QSerialPortInfo &other)

静态公共成员

QList<QSerialPortInfo>availablePorts()
QList<qint32>standardBaudRates()

详细描述

使用静态 availablePorts() 函数生成 QSerialPortInfo 对象的列表。列表中的每个 QSerialPortInfo 对象代表一个串行端口,可以查询其 端口名系统位置描述制造商 以及其他一些硬件参数。QSerialPortInfo 类还可以用作 setPort() 方法(QSerialPort 类)的输入参数。

用法示例

示例代码枚举所有可用的串行端口并将它们的参数打印到控制台

    const auto serialPortInfos = QSerialPortInfo::availablePorts();
    for (const QSerialPortInfo &portInfo : serialPortInfos) {
        qDebug() << "\n"
                 << "Port:" << portInfo.portName() << "\n"
                 << "Location:" << portInfo.systemLocation() << "\n"
                 << "Description:" << portInfo.description() << "\n"
                 << "Manufacturer:" << portInfo.manufacturer() << "\n"
                 << "Serial number:" << portInfo.serialNumber() << "\n"
                 << "Vendor Identifier:"
                 << (portInfo.hasVendorIdentifier()
                     ? QByteArray::number(portInfo.vendorIdentifier(), 16)
                     : QByteArray()) << "\n"
                 << "Product Identifier:"
                 << (portInfo.hasProductIdentifier()
                     ? QByteArray::number(portInfo.productIdentifier(), 16)
                     : QByteArray());
    }

另请参见 QSerialPort.

成员函数文档

QSerialPortInfo::QSerialPortInfo()

构造一个空的 QSerialPortInfo 对象。

另请参阅 isNull

[显式] QSerialPortInfo::QSerialPortInfo(const QSerialPort &端口)

从串行 端口 构造 QSerialPortInfo 对象。

[显式] QSerialPortInfo::QSerialPortInfo(const QString &名称)

从串行端口 名称 构造 QSerialPortInfo 对象。

此构造函数根据端口名称 名称 在可用的端口中查找相关的串行端口,并为该端口构造串行端口信息实例。

QSerialPortInfo::QSerialPortInfo(const QSerialPortInfo &其他)

构造 其他 的副本。

[noexcept] QSerialPortInfo::~QSerialPortInfo()

销毁 QSerialPortInfo 对象。对该对象中的值的引用变为无效。

[静态] QList<QSerialPortInfo> QSerialPortInfo::availablePorts()

返回系统上可用的串行端口列表。

QString QSerialPortInfo::description() const

如果可用,返回串行端口的描述字符串;否则返回空字符串。

另请参阅 manufacturer() 和 serialNumber

bool QSerialPortInfo::hasProductIdentifier() const

如果有有效的 16位 产品号存在,则返回 true;否则返回 false

另请参阅 productIdentifiervendorIdentifierhasVendorIdentifier

bool QSerialPortInfo::hasVendorIdentifier() const

如果有有效的 16位 供应商号存在,则返回 true;否则返回 false

另请参阅 vendorIdentifierproductIdentifierhasProductIdentifier

bool QSerialPortInfo::isNull() const

返回该 QSerialPortInfo 对象是否包含串行端口定义。

QString QSerialPortInfo::manufacturer() const

如果可用,返回串行端口的制造商字符串;否则返回空字符串。

另请参阅 descriptionserialNumber

QString QSerialPortInfo::portName() const

返回串行端口的名称。

另请参阅 systemLocation

quint16 QSerialPortInfo::productIdentifier() const

返回串口的16位产品号,如果可用;否则返回零。

另请参阅hasProductIdentifier(),vendorIdentifier()和hasVendorIdentifier()。

QString QSerialPortInfo::serialNumber() const

返回串口的串号字符串,如果可用;否则返回空字符串。

注意:串号可能包含字母。

另请参阅description()和manufacturer()。

[静态] QList<qint32> QSerialPortInfo::standardBaudRates()

返回目标平台支持的可用标准波特率列表。

void QSerialPortInfo::swap(QSerialPortInfo &other)

QSerialPortInfo other与此QSerialPortInfo交换。此操作非常快速且永远不会失败。

QString QSerialPortInfo::systemLocation() const

返回串口的系统位置。

另请参阅portName()。

quint16 QSerialPortInfo::vendorIdentifier() const

返回串口的16位供应商号,如果可用;否则返回零。

另请参阅hasVendorIdentifier(),productIdentifier()和hasProductIdentifier

QSerialPortInfo &QSerialPortInfo::operator=(const QSerialPortInfo &other)

QSerialPortInfo对象设置为等于other

© 2024 The Qt Company Ltd. 本文档中包含的文档贡献为各自所有者的版权。此处提供的文档根据GNU自由文档许可协议版本1.3许可,由自由软件基金会发布。Qt及其相关标志是芬兰和/或全球其他地区The Qt Company Ltd.的商标。所有其他商标均为各自所有者的财产。