Qt获取本机的IP地址
2015-09-09 16:08
190 查看
QT += network #include <QNetworkInterface> QHostAddress MainWindow::getLocalHostIP() { QList<QHostAddress> AddressList = QNetworkInterface::allAddresses(); QHostAddress result; foreach(QHostAddress address, AddressList){ if(address.protocol() == QAbstractSocket::IPv4Protocol && address != QHostAddress::Null && address != QHostAddress::LocalHost){ if (address.toString().contains("127.0.")){ continue; } result = address; break; } } return result; } void NetworkInformation::slotDetail() { QString detail=""; QList<QNetworkInterface> list=QNetworkInterface::allInterfaces(); for(int i=0;i<list.count();i++) { QNetworkInterface interface=list.at(i); detail=detail+tr("设备:")+interface.name()+"\n"; detail=detail+tr("硬件地址:")+interface.hardwareAddress()+"\n"; QList<QNetworkAddressEntry> entryList=interface.addressEntries(); for(int j=0;j<entryList.count();j++) { QNetworkAddressEntry entry=entryList.at(j); detail=detail+"\t"+tr("IP 地址:")+entry.ip().toString()+"\n"; detail=detail+"\t"+tr("子网掩码:")+entry.netmask().toString()+"\n"; detail=detail+"\t"+tr("广播地址:")+entry.broadcast().toString()+"\n"; } } QMessageBox::information(this,tr("Detail"),detail); }
相关文章推荐
- Qt线程的简单使用
- QtSoap向webservice传递结构体或类参数
- qt 多线程访问数据库问题
- qt多线程编程之QThread
- QT最简单的打包发布技巧
- qt4解决中文乱码方法
- QtSoap传递多种类型参数
- QT 如何创建一个N行N列的控件
- 利用QT和libvlc写RTSP播放器
- QT5 动态链接库的创建和使用
- MAC下QT5 + Xcode 4.6.3 使用小结
- 用Qt开发第一个Hello World程序
- qt 多线程开发
- Qt安装后配置环境变量(Mac)
- Qt、Qte、Qtopia、Qvfb、Qpe概念区别
- 转:Qt 嵌入式开发环境搭建
- 学习Qt5(5)
- qt使用
- PyQt4 QPixmap.load/loadFromData 使用py2exe 打包后无法显示JPEG,gif等图片的问题
- 关于Qt在子线程中使用QMessageBox的折衷方法