Qt5實作的簡易UDP廣播程式,學習Qt 下UDP協定的基本使用。
建立兩個工程,命名UDPclient和UDPserver.
又server發送廣播,client負責接收。
------------
建立UDPserver時,選擇dialog視窗類。
并用Qt設計器建立界面。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL2MDO0ADNxQTNxUDMxITOwgTMwIzLcZDM0EDMy8CXvZmbp9CXt92YuUGZvNWatFWbuU2Zh1Wavw1LcpDc0RHaiojIsJye.png)
textedit用來輸入廣播的消息。
start按鈕開始廣播。
在.pro工程文檔加入:
dialog.h中,包含頭檔案:
及槽函數:
聲明變量:
dialog.cpp中:
包含頭檔案:
在構造函數中添加:
連接配接信号槽;
實作槽函數:
這樣,點選發送按鈕後觸發StartBtnDClicked()函數,并初始化定時器為1000ms,即每隔一秒觸發TimeOut()函數發送廣播;
發送過程中再次點選按鈕,發送停止;
其中,發送廣播:writeDatagram(msg.toLatin1(),msg.length(),QHostAddress::Broadcast,port),QHostAddress::Broadcast擷取位址,port定義1024至65536之間任意值即可;
-----------
然後是client,接收端;
建立界面:
textEdit用來顯示接收到的廣播;
槽函數:
聲明:
dialg.cpp中:
包含
構造函數中添加:
當有廣播時,将收到的消息顯示在文本編輯框中;
---------
運作效果:
打開一個client和一個server:
輸入 “ Hello world! " 測試;
Moran @ 2014.6.2