关于window下和Ubuntu下获取本地ip地址的方法;2.关于通过槽函数名执行槽函数的办法,3.QString初始化的意义
2017-03-23 11:49
423 查看
1.首先网上的两种方法window上可行,但是Ubuntu 显示127.0.0.1 QHostInfoa=QHostInfo::fromName(QHostInfo::localHostName());
foreach(const QHostAddress &b, a.addresses()) {
if(b.protocol() == QAbstractSocket::IPv4Protocol) {
qDebug() << __LINE__ << b.toString();
}
}
ubuntu可行,但是window上返回,超过一个的ipadress
foreach(const QHostAddress &a, QNetworkInterface::allAddresses()){
if(a.protocol() == QAbstractSocket::IPv4Protocol && a!=QHostAddress(QHostAddress::LocalHost)){
qDebug() << __LINE__<< a.toString();
}
}
但是没有那种,既可以在双平台可行
后来使用下种方法
QString lds::getLocalIPlike192(bool *ok)
{
if(ok)*ok = false;
foreach(const QHostAddress &a, QNetworkInterface::allAddresses()){
if(a.protocol() == QAbstractSocket::IPv4Protocol){
if(a.toString().startsWith("192.168")) {//局域网
return a.toString();
}
}
}
return "";
}
仅限局域网
2.关于通过槽函数名执行槽函数的办法
这种逆向思维比较别扭,后来使用一直用的方法就能解决
qDebug() << QMetaObject::invokeMethod(this,
"on_clearAll_clicked",
Qt::QueuedConnection
);3.QString初始化的意义一开始对于QString 的isnull没有任何概念, 用的最多的是isempty,在处理mysql addbindvalue的时候才意识换个观点,如何insert 的时候,插入一个null 的值,那就addbindvalue(QString()) 此时她本身的为isnull
相关文章推荐
- 关于opencv通过initUndistortRectifyMap函数获取undistort后的对应点的方法
- java通过读取本地文件获取反射方法参数,执行对象方法
- 通过IP地址获取归属地的最简单的方法[转]
- 正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。问题的解决方法!
- 关于spring 初始化bean完成 之后执行方法
- 关于酷派8730“移动版”手机无法将应用安装在外置SD卡的解决办法和获取ROOT权限方法
- 获取客户端ip地址方法和通过curl在命令行提交post数据到服务器
- 正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。问题的解决方法!
- C#中通过调用webService获取上网IP地址的区域的方法
- C# ASP.NET通过IP地址获取归属地的方法
- 正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。问题的解决方法!
- 关于自定初始化方法与viewdidload()方法的执行关系
- [置顶] C#中通过调用webService获取上网IP地址的区域的方法
- 关于通过php获取mysql表里的字段名的方法的整理
- 关于Android中调用了post方法后貌似没有执行run方法的解释及解决办法
- live555学习心得二(获取本地IP地址方法1)
- Window下获取执行文件的目录的路径函数
- 关于使用Silverlight通过IP地址访问本地ArcGIS Server发布的Rest服务无法出图的问题
- 关于obj和基本类通过函数参数传进去执行是否改变原来的值
- 关于从编辑框获取IP地址的问题-CString转char * 的解决办法