中文显示
# main.cpp ------------------------ #include <QTextCodec> QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8")); QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8")); QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8")); QFont font; font.setPointSize(16); font.setFamily(("wenquanyi")); font.setBold(false); a.setFont(font);
无标题栏显示
setWindowFlags(Qt::FramelessWindowHint); show();
串口使用的第三方的库:Posix_QextSerialPort
Posix_QextSerialPort *myCom; myCom = new Posix_QextSerialPort("/dev/ttyUSB0",QextSerialBase::Polling); myCom ->open(QIODevice::ReadWrite); myCom->setBaudRate(BAUD38400); myCom->setDataBits(DATA_8); myCom->setParity(PAR_NONE); myCom->setStopBits(STOP_1); myCom->setFlowControl(FLOW_OFF); myCom->setTimeout(100); readTimer = new QTimer(this); readTimer->start(100); connect(readTimer,SIGNAL(timeout()),this,SLOT(readMyCom())); void TestThread::readMyCom() { QByteArray temp = myCom->readAll(); myCom->write(temp); }
json使用第三方库(QJson和CJson)
https://github.com/croxs-power/QJson
#include <QJson.h> objtemp.insert("ProductKey","123"); objtemp.insert("ProductSecret","2222"); objtemp.insert("Address","1234"); qDebug()<<objtemp.format_string();#格式化为字符串
#include <cJSON.h> QString ss="{"address":"1234","deviceState":1}" jsonRoot = cJSON_Parse(ss.toLocal8Bit().data()); Conrtrol_address = cJSON_GetObjectItem(jsonRoot, "address"); Conrtrol_deviceState = cJSON_GetObjectItem(jsonRoot, "deviceState"); Control_Device_Address=Conrtrol_address->valuestring; Control_Device_deviceState_number=Conrtrol_deviceState->valueint;
网络请求
QNetworkAccessManager *m_network; QNetworkRequest request; QNetworkReply* reply; m_network = new QNetworkAccessManager(this); QObject::connect(m_network, SIGNAL(finished(QNetworkReply*)),this, SLOT(replyFinished(QNetworkReply*))); request.setUrl(QUrl("https://121.199.57.139:8080/iot/UploadData")); request.setHeader(QNetworkRequest::ContentTypeHeader,QVariant("application/json")); SHT_Issue_reply=SHT_Issue_network->post(SHT_Issue_request,SHT_Issue_address.json_string());
socket请求
QTcpSocket *pTcpSocketClient; QString qStrIP = "121.199.57.139"; quint16 netport = 8989; QObject::connect(this,SIGNAL(started()),this,SLOT(slotConnectServer())); void TestThread::slotConnectServer() //连接服务器 { pTcpSocketClient = new QTcpSocket(this); pTcpSocketClient->abort(); pTcpSocketClient->connectToHost(qStrIP,netport); connect(pTcpSocketClient,SIGNAL(readyRead()),this,SLOT(slotReadMesg())); } void TestThread::slotReadMesg() //读取信息 { qba= pTcpSocketClient->readAll(); }
TableView使用
QStandardItemModel *model_history; model_history= new QStandardItemModel(); model_history->setColumnCount(4); model_history->setHorizontalHeaderItem(0, new QStandardItem("DeviceID")); model_history->setHorizontalHeaderItem(1, new QStandardItem("DeviceType")); model_history->setHorizontalHeaderItem(2, new QStandardItem("SensorValues")); model_history->setHorizontalHeaderItem(3, new QStandardItem("acceptTime")); this->ui->tableView->setModel(model_history); this->ui->tableView->setColumnWidth(0,200); this->ui->tableView->setColumnWidth(1,150); this->ui->tableView->setColumnWidth(2,150); this->ui->tableView->setColumnWidth(3,150); model_history->setItem(i,0,new QStandardItem(DeviceID->valuestring)); model_history->setItem(i,1,new QStandardItem(DeviceType_result)); model_history->setItem(i,2,new QStandardItem(QString::number(SensorValues->valuedouble))); model_history->setItem(i,3,new QStandardItem(QString::number(acceptTime->valueint)));
c/c++开发分享迅为4412——QT4开发手册地址:https://blog.csdn.net/JoshRong/article/details/109262836
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/597168.html