QT簡單的UDP通訊

2021-10-05 21:26:26 字數 1354 閱讀 3309

介面設計

通過訊號槽機制監聽套接字內是否有資料。readyread()

繫結埠bind()

功能:從udpsockt中讀取資料,顯示給使用者。

haspendingdatagrams()判斷是否有資料

pendingdatagransize()返回資料大小

readdatagram()讀取資料,第乙個引數,資料儲存物件,第二引數,資料大小。

udpclient.h

#include #include #include #include #include class udpclient : public qdialog

;#endif // udpclient_h

udpcilent.cpp

#include "udpclient.h"

#include #include udpclient::udpclient(qwidget *parent,qt::windowflags f)

: qdialog(parent,f)

}udpclient::~udpclient()

void udpclient::closebtnclicked()

void udpclient::datareceived()

}

主要原理定時廣播

在此布局不做介紹。

寫入函式writedatagram(),第乙個引數,資料,第二個,資料大小

udpserver.h

include #include #include #include #include #include #include class udpserver : public qdialog

;#endif // udpserver_h

udpserver.cpp

#include "udpserver.h"

#include udpserver::udpserver(qwidget *parent, qt::windowflags f)

: qdialog(parent,f)

udpserver::~udpserver()

void udpserver::startbtnclicked()

else

}void udpserver::timeout()

if((length=udpsocket->writedatagram(msg.tolatin1(),msg.length(),qhostaddress::broadcast,port))!=msg.length())

}

最後注意.pro檔案中加入qt+=network.

QT學習 UDP通訊

是乙個輕量級 不可靠 面向資料報的 無連線的協議,用於可靠性不是非常重要的情況。一般分為傳送端和接收端 1 傳送端 include sender.h include ui sender.h include sender sender qwidget parent qdialog parent ui ...

udp簡單通訊

客戶端 include include include include include define serv port 8000 int main int argc,char ar close sockfd return 0 如何實現內網和外網的通訊 main.c udpserver create...

QT關於UDP通訊設定

首先在.pro檔案中新增 qt network 在標頭檔案下宣告 include 再宣告乙個私有物件 qudpsocket sender 再在設計介面上放入乙個按鈕,關聯按下槽函式與訊號函式。include mainwindow.h include ui mainwindow.h mainwindo...