迅为4412开发板Qt网络编程_第1页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、迅为4412开发板qt网络编程步骤二:编写代码1.创建 qudpsocket 对象,用法 bind 函数绑定端口号和套接字,数据报到来后会发出信 号(),在绑定的槽函数内去读取数据。2.读取数据,数据到来 haspendingdatagrams()返回 true,再用 pendingdatagramsize()猎取数据报的长度,假如数据没有被读取完,haspendingdatagrams()就会返回 true,直至数据都被读取完。readdatagram(data,size);参数 data 为读取的数据,size 为数据长度。3.发送数据,用法 writedatagram 函数,writed

2、atagram(const char *data, qint64 len, const qhostaddress &host, quint16 port);data:发送的数据。len:发送的数据长度。host:目标 ip 地址。port:目标端口号。4.关闭 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;/* 打开按

4、钮*/void udp:on_pushbutton_clicked()/绑定本端口的端口号if(udpsocket->bind(ui->cliedit->text().touint() = true)qmessagebox:information(this,"提醒","胜利");elseqmessagebox:information(this,"提醒","失败");/绑定数据信号和槽函数connect(udpsocket,signal(readyread(),this,slot(readyread

5、_slot();/*读取数据槽函数*/void udp:readyread_slot()qstring buf;qbytearray array;/haspendingdatagrams()返回 true 时表示起码有一个数据报在等待被读取while(udpsocket->haspendingdatagrams()/猎取数据array.resize(udpsocket->pendingdatagramsize();udpsocket->readdatagram(array.data(),array.size();buf = array.data();ui->recved

6、it->appendplaintext(buf);/* 发送数据*/void udp:on_pushbutton_3_clicked()quint16 port;qstring sendbuff;qhostaddress address;address.setaddress(ui->ipedit->text();/目标机地址port = ui->portedit->text().toint();/目标机端口号sendbuff = ui->sendedit->text();/发送的数据/发送udpsocket->writedatagram(sendbuff.tolocal8bit().data(),sendbuff.length(),address,p

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论