
下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、迅為4412開(kāi)發(fā)板qt網(wǎng)絡(luò)編程步驟二:編寫(xiě)代碼1.創(chuàng)建 qudpsocket 對(duì)象,用法 bind 函數(shù)綁定端口號(hào)和套接字,數(shù)據(jù)報(bào)到來(lái)后會(huì)發(fā)出信 號(hào)(),在綁定的槽函數(shù)內(nèi)去讀取數(shù)據(jù)。2.讀取數(shù)據(jù),數(shù)據(jù)到來(lái) haspendingdatagrams()返回 true,再用 pendingdatagramsize()獵取數(shù)據(jù)報(bào)的長(zhǎng)度,假如數(shù)據(jù)沒(méi)有被讀取完,haspendingdatagrams()就會(huì)返回 true,直至數(shù)據(jù)都被讀取完。readdatagram(data,size);參數(shù) data 為讀取的數(shù)據(jù),size 為數(shù)據(jù)長(zhǎng)度。3.發(fā)送數(shù)據(jù),用法 writedatagram 函數(shù),writed
2、atagram(const char *data, qint64 len, const qhostaddress &host, quint16 port);data:發(fā)送的數(shù)據(jù)。len:發(fā)送的數(shù)據(jù)長(zhǎng)度。host:目標(biāo) ip 地址。port:目標(biāo)端口號(hào)。4.關(guān)閉 socket 套接字。代碼如下:udp.hincludeincludenamespace ui class udp;class udp : public qmainwindowq_objectpublic:explicit udp(qwidget *parent = 0); udp();qudpsocket * udpsocke
3、t;private slots:void on_pushbutton_clicked();void readyread_slot(void);void on_pushbutton_3_clicked();void on_pushbutton_2_clicked();private:ui:udp *ui;udp.cpp:udp:udp(qwidget *parent) :qmainwindow(parent), ui(new ui:udp)ui->setupui(this);udpsocket = new qudpsocket(this);udp:udp()delete ui;/* 打開(kāi)按
4、鈕*/void udp:on_pushbutton_clicked()/綁定本端口的端口號(hào)if(udpsocket->bind(ui->cliedit->text().touint() = true)qmessagebox:information(this,"提醒","勝利");elseqmessagebox:information(this,"提醒","失敗");/綁定數(shù)據(jù)信號(hào)和槽函數(shù)connect(udpsocket,signal(readyread(),this,slot(readyread
5、_slot();/*讀取數(shù)據(jù)槽函數(shù)*/void udp:readyread_slot()qstring buf;qbytearray array;/haspendingdatagrams()返回 true 時(shí)表示起碼有一個(gè)數(shù)據(jù)報(bào)在等待被讀取while(udpsocket->haspendingdatagrams()/獵取數(shù)據(jù)array.resize(udpsocket->pendingdatagramsize();udpsocket->readdatagram(array.data(),array.size();buf = array.data();ui->recved
6、it->appendplaintext(buf);/* 發(fā)送數(shù)據(jù)*/void udp:on_pushbutton_3_clicked()quint16 port;qstring sendbuff;qhostaddress address;address.setaddress(ui->ipedit->text();/目標(biāo)機(jī)地址port = ui->portedit->text().toint();/目標(biāo)機(jī)端口號(hào)sendbuff = ui->sendedit->text();/發(fā)送的數(shù)據(jù)/發(fā)送udpsocket->writedatagram(sendbuff.tolocal8bit().data(),sendbuff.length(),address,p
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 水痘護(hù)理診斷及護(hù)理措施
- 寒假安全教育班會(huì)
- 急性化膿性鼻竇炎護(hù)理查房
- 大學(xué)性健康修養(yǎng)
- 腎病內(nèi)科護(hù)士述職報(bào)告
- 鋰電池?zé)峁芾硐到y(tǒng)介紹
- 透析頸部插管護(hù)理常規(guī)
- 咨詢(xún)案例分享
- 2025年聚烯烴類(lèi)線纜項(xiàng)目申請(qǐng)報(bào)告
- 2025年潮汐發(fā)電成套設(shè)備項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告
- 中登協(xié)初級(jí)戶外指導(dǎo)員培訓(xùn)
- 2023科研機(jī)構(gòu)招聘面試題庫(kù)100題
- 小學(xué)學(xué)業(yè)生涯規(guī)劃與目標(biāo)
- 老舊小區(qū)物業(yè)投標(biāo)方案(技術(shù)標(biāo))
- 辦公耗材采購(gòu) 投標(biāo)方案(技術(shù)方案)
- 欽州市第二人民醫(yī)院白石湖院區(qū)項(xiàng)目環(huán)境影響報(bào)告書(shū)
- 城市水工程概論
- 撤銷(xiāo)冒名登記(備案)申請(qǐng)表
- 減肥總結(jié):如何制定有效的減肥計(jì)劃PPT
- 眼視光醫(yī)學(xué)專(zhuān)業(yè)綜合概述
- 易制毒化學(xué)品安全管理培訓(xùn)
評(píng)論
0/150
提交評(píng)論