2014-10-07 62 views
6

如何在Qt中获得系统网络状态,就像我们在.NET中获得事件命中一样,以便每次连接网络时都能获得网络连接状态的信号?如何获取Qt中的系统网络状态?

是否有任何功能与我上面提到的功能相同?

使用ping和其他网络配置方法需要很少的时间。
但我需要尽可能快地显示它,而不是使用特定端口来侦听套接字并显示其错误。

任何人都可以帮助我吗?

+0

你可以看到这篇文章:http://stackoverflow.com/questions/2475266/verfiying-the-network-connection-using-qt-4-4 – Nejat 2014-10-07 10:07:40

+0

我已经试过这种方法。但它不是一个正确的答案因为它与wifi失败。 – Dev 2014-10-07 10:18:42

回答

1

我发现越来越使用QT网络信息的一个很好的例子: http://developer.nokia.com/community/wiki/Get_Network_information_using_Qt

举例来说,你可以从公共成员,networkSignalStrength,QSystemNetworkInfo的信号强度。而且,如果您看一下QSystemNetworkInfo类别参考,则可以找到诸如networkSignalStrengthChanged之类的信号,以便在网络信号强度发生变化时处理这些信号。

希望这会有所帮助!

+0

QSystemNetworkInfo类是QtMobility API的一部分,不幸的是它不能用于桌面应用程序。所以我不能将这种方法用于桌面应用程序 – Dev 2014-10-07 09:53:50

+0

QtMobility可以单独编译为桌面,但正如我在Qt 5中看到的,它不存在于所有,它的一些部分被移动到Qt库,但QSystemNetworkInfo类错过了Qt 5. @SLee答案根本没有用。 – 2014-10-07 10:02:45