Jar*_*ice 5 c++ qt qt-signals qtserialport qtcore
有没有办法使用Qt发送信号或任何其他方式来判断USB串口线是否已拔下?
您可以error在QtSerialPort附加组件中使用QSerialPort类的信号.请参阅我们的文档中的详细信息.
http://qt-project.org/doc/qt-5.1/qtserialport/qserialport.html#error-prop
你需要写这个基本上:
connect(mySerialPort, SIGNAL(error(QSerialPort::SerialPortError)), this,
SLOT(handleError(QSerialPort::SerialPortError)));
...
void MyClass::handleError(QSerialPort::SerialPortError error)
{
if (error == QSerialPort::ResourceError) {
QMessageBox::critical(this, tr("Critical Error"), serial->errorString());
closeSerialPort();
}
}
Run Code Online (Sandbox Code Playgroud)
使用Qt 5.1 <QtSerialPort可以轻松安装,因为软件包是分发的.但是,我们确保QtSerialPort适用于以前的版本,包括Qt 4.8.X. 在这里,您可以找到Qt 4的说明,以便为您安装:
git clone git@gitorious.org:qt/qtserialport.git
cd qtserialport
QMAKE
使
sudo make install.
然后,如果您碰巧使用qmake,则需要在qmake项目文件中包含以下行:
Qt 5: QT += serialport
Qt 4: COMFIG += serialport
Run Code Online (Sandbox Code Playgroud)