QT 即时聊天软件(一)

好久没有写博客了,时间确实不够使,既要考研,又要减肥,还得保证每科的成绩靠前,压力还是比较大的,现在考试完了,想着课设的东西都是随意拼凑的,心有不甘,现在就把自己写的东西记录一下,一是想记录下编写过程中遇到的一些问题,二是想把这个课设弄出来混点下载积分花花,CSDN的下载资源还是很不错的,嘿嘿嘿。。。

今天解决的问题比较小,就是如何解决获取本地IP地址的问题,利用QtNetwork中的函数,先获取本地主机名,再依据本地主机名来获取本地IP,具体实现函数如下:

void UserList::getLocalIp(){
    QString localHostName = QHostInfo::localHostName();
    QHostInfo info = QHostInfo::fromName(localHostName);
    QString localIp;
    foreach(QHostAddress address,info.addresses())
    {
        if(address.protocol() == QAbstractSocket::IPv4Protocol){
            localIp = address.toString();
        }
    }
    ui.username = ui.username + localIp;
    qDebug()<<"The end:"<.username;

}

这个方法在我这里有点小小的问题,就是得到的ipv4地址是不止一个的,可能我的笔记本配置了虚拟机的缘故吧,或者设置了很多的连接,反正得到的IP地址不止一个,但是据我观察,最后一个得到的IP地址往往就是我们现在正在使用的方法,所以这里取了个巧,这个问题就算是解决了吧,以后若有机会再接触的话再研究有没有更好的方法吧。

就这样吧,哈哈哈。。。

你可能感兴趣的:(C++基础,QT学习)