电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

Qt网络应用socket通信例子VIP免费

Qt网络应用socket通信例子_第1页
1/7
Qt网络应用socket通信例子_第2页
2/7
Qt网络应用socket通信例子_第3页
3/7
Qt 网络应用----socket 通信例子 1.我们新建Qt4 Gui Application,工程名为“udpone”,选中QtNetw ork模块,Base class 选择QMainWindow。(说明:如果一些 Qt Creator 版本没有添加模块一项,我们就需要在工程文件 tcpServer.pro 中添加一行代码:QT += network) 2.在 mainwindow.ui 中添加 2 个文本编辑框(Text Edit),左边的那个的objectName 改为为textSend,右边的那个的 objectName 改为textReceive,添加一个按钮,改其 objectName 为send,如下所示: 3.在 mainwindow.h 文件中加入#include , 添加 public 变量 QHostAddress *hostaddr1;和 QHostAddress *hostaddr2; 添加 private 变量 QUdpSocket *udpSocket1;和 QUdpSocket *udpSocket2; 添加私有槽函数: private slots: void send(); void receive(); 4.在 mainwindow.cpp 文件中,加入如下代码: (1)在构造函数中添加: udpSocket1=new QUdpSocket(this); udpSocket2=new QUdpSocket(this); hostaddr1 = new QHostAddress("192.168.253.106"); hostaddr2 = new QHostAddress("192.168.253.188"); bool conn=udpSocket1->bind(*hostaddr1,6666,QUdpSocket::ShareAddress);//监听本机上的6666 端口,如果有消息到来,就会发送readyRead()信号。 if(!conn){ QMessageBox box; box.setText(tr("连接错误")); box.exec(); }else{ connect(udpSocket1,SIGNAL(readyRead()),this,SLOT(receive())); connect(ui->send,SIGNAL(clicked()),this,SLOT(send())); } (2)实现 send 函数: void MainWindow::send() { QMessageBox box; QString text=ui->textSend->toPlainText(); if(text.length()==0){ box.setText(tr("请输入发送内容")); box.exec(); } udpSocket2->writeDatagram(text.toUtf8(),text.length(),*hostaddr2,6665);//向 IP 为 192.168.253.188 的机器的6665 端口发送数据 } (3)实现receive 函数: void MainWindow::receive() { while(udpSocket1->hasPendingDatagrams()){ QByteArray data; data.resize(udpSocket1->pendingDatagramSize()); udpSocket1->readDatagram(data.data(),data.size()); QString str = data.data(); ui->textReceive->insertPlainText(str+"\n"); } } OK,完成一半!上面这个程序需要运行在IP 为192.168.25...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

Qt网络应用socket通信例子

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部