QT与C ++ GUI应用程序检查网络状态

时间:2014-06-14 05:54:30

标签: c++ qt user-interface network-programming ip-address

好吧,我最近一直在做QT的实验,我有一台触摸屏Linux PC,我把它连接到WiFi网络。我没有想过为网络制作应用程序,而是以网络老式的方式进行ping操作。

接口就像,我会输入一个IP地址,应用程序将ping网络,让我知道IP是否可以ping通。当IP被ping时,将显示绿色检查,如果没有被ping,则会显示红色检查。

我的进步是,我能够在脚本文件中获取IP并对其进行ping操作。但问题是如何将ping回复与应用程序接口。即两个标签(绿色和红色检查)???

提前致谢。我的GUI看起来像这样。

enter image description here

1 个答案:

答案 0 :(得分:5)

没有一个很好的跨平台方式来做到这一点。但您可以使用特定于平台的方式:

在Linux上你可以:

int returnedCode = QProcess::execute("ping", QStringList() << "-c 1" << ui->ipEdit->text());
if (returnedCode == 0) 
{
    // It's active, Show Green Check
} else 
{
    //  It's dead, Show Red Check
}

在Windows上它就像:

int returnedCode = QProcess::execute("ping", QStringList() << "-n" << "1" << ui->ipEdit->text());
if (returnedCode == 0) 
{
    // It's active, Show Green Check
} else 
{
    //  It's dead, Show Red Check
}