Qt是面向对象的框架,使用特殊的代码生成扩展以及一些宏,Qt很容易扩展,并且允许真正地组件编程。那Qt怎么获取错误信息?下面来我们就来给大家讲解一下Qt获取错误信息方法。
qDebug()<<qsqldatabase::drivers();< p="">
qDebug()<<db.database();< p="">
qDebug()<<db.tables();< p="">
qDebug()<<query.lasterror().text(); p="" 反馈错误信息<="">
网络信息qt如何获取?
1.用到网络相关的类要在工程文件.pro里加入下面一句话,告诉编译器加入网络模块
QT +=network
2,用到的Qt的类
QNetworkInterface :这个类会帮我们获取本机的所有网络接口,存储网络接口的名称以及物理地址等
QNetworkAddressEntry:可以帮我们存储网络接口的IP地址,子网掩码,以及广播地址等
一般将这两个类联合起来使用
QListlist = QNetworkInterface::allInterfaces(); //获取所有网络接口的列表 foreach(QNetworkInterface interface, list) { //遍历每一个网络接口 qDebug() << "Device: " << interface.name(); < p = "" > //设备名 qDebug() << "HardwareAddress:" << interface.hardwareaddress(); < p = "" > //硬件地址 QListentryList = interface.addressEntries(); //获取IP地址条目列表,每个条目中包含一个IP地址,一个子网掩码和一个广播地址 foreach(QNetworkAddressEntry entry, entryList) { //遍历每一个IP地址条目 qDebug() << "IP Address:" << entry.ip() .tostring(); < p = "" > //IP地址 qDebug() << "Netmask:" << entry.netmask() .tostring(); < p = "" > //子网掩码 qDebug() << "Broadcast:" << entry.broadcast() .tostring(); < p = "" > //广播地址 } }
上面会把计算机中的各种接口信息打印出来,但我们准备在linux系统里获取wifi的网络地址怎么办,其实道理是一样的
void networkWidget::getNetworkMsg() { QListlist = QNetworkInterface::allInterfaces(); foreach(QNetworkInterface interface, list) { //遍历每一个网络接口 qDebug() << "Device: " << interface.name(); < p = "" > //设备名 qDebug() << "HardwareAddress:" << interface.hardwareaddress(); < p = "" > //硬件地址 if (interface.name() == "wlan0") { QListentryList = interface.addressEntries(); ipAddrlineEdit - > setText(entryList.first() .ip() .toString()); subnetlineEdit - > setText(entryList.first() .netmask() .toString()); //ui->lineEdit_3->setText(entryList.first().broadcast().toString()); } } }
这样就获得我们想要的IP地址了,所以今后我们要想获取网络信息,就可以使用qt这样获取!最后大家如果想要了解更多json相关知识,敬请关注奇Q工具网。
推荐阅读: