zoukankan      html  css  js  c++  java
  • 【Qt点滴】:获取本机网络信息

    用Qt5实现的简单程序,获取本机网络信息。

    建立工程后,在.pro里加入:

    QT       += network

    用Qt设计器创建界面:

    在widget.h中声明getHostInformation类:

    public:
        int getHostInformation();

    声明槽函数:

    public slots :
        void slotDetail();

    并包含头文件:

    #include <QHostInfo>
    #include <QNetworkInterface>

    在widget.cpp中实现:

    int Widget::getHostInformation()
    {
        QString localHostName = QHostInfo::localHostName();
        ui->lineEditLocalHostName->setText(localHostName);
    
        QHostInfo hostinfo = QHostInfo::fromName(localHostName);
        QList<QHostAddress> listAddress = hostinfo.addresses();
        if(!listAddress.isEmpty())
        {
            ui->lineEditAddress->setText(listAddress.first().toString());
        }
        return 0;
    }
    
    void Widget::slotDetail()
    {
        QString detail = "";
        QList<QNetworkInterface> list = QNetworkInterface::allInterfaces();
        for(int i=0;i<list.count();i++)
        {
            QNetworkInterface interface = list.at(i);
            detail = detail + tr("Device: ") + interface.name() + "
    ";
            detail = detail + tr("Hardware address: ") + interface.hardwareAddress() + "
    ";
            QList<QNetworkAddressEntry> entryList = interface.addressEntries();
            for(int j=0;j<entryList.count();j++)
            {
                QNetworkAddressEntry entry = entryList.at(j);
                detail = detail + "	" + tr ("IP address: ") + entry.ip().toString() + "
    ";
                detail = detail + "	" +tr ("Subnet mask: ") + entry.netmask().toString() + "
    ";
                detail = detail + "	" +tr ("Broadcast address: ") + entry.broadcast().toString() + "
    ";
            }
        }
        QMessageBox::information(this,tr("Detail"),detail);
    }

    编译运行:

    Moran @  2014.6.1

  • 相关阅读:
    VMware 创建的虚拟机,Xshell无法进行连接
    Centos7 文件修改详情
    Centos7 selinux关闭
    centos7 RPM命令使用
    centos 操作系统优化
    centos 内存使用情况+负载使用情况
    Centos 修改环境变量
    centos7 系统级别(持续更新)
    centos7 常规修改信息(比较杂的)持续更新
    centos7 修改网卡信息
  • 原文地址:https://www.cnblogs.com/moranBlogs/p/3763771.html
Copyright © 2011-2022 走看看