QT5.6 持续检查网络是否联网
时间: 2023-09-20 13:05:56 浏览: 43
你可以使用QTimer类来定时检查网络是否联网。以下是一个简单的示例代码:
```cpp
#include <QCoreApplication>
#include <QNetworkConfigurationManager>
#include <QTimer>
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QNetworkConfigurationManager manager;
QTimer timer;
timer.setInterval(5000); // 每隔5秒检查一次网络连接状态
QObject::connect(&timer, &QTimer::timeout, [&](){
if (manager.isOnline())
{
qDebug() << "网络已连接";
}
else
{
qDebug() << "网络未连接";
}
});
timer.start();
return a.exec();
}
```
该代码使用QTimer类每隔5秒检查一次网络连接状态,并输出结果。其中,QObject::connect()函数用于连接timer的timeout信号和lambda表达式,lambda表达式中检查网络连接状态并输出结果。