【QT】网络编程之UDP通信


前言

UDP不分客户端和服务端,
只使用一个类QUdpSocket。


提示:篇幅问题本文只提供部分代码,下面案例可供参考

一、 widget.cpp

#include "widget.h"
#include "ui_widget.h"
#include <QMessageBox>

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
   
    ui->setupUi(this);

    udpSocket = new QUdpSocket(this);

}

Widget::~Widget()
{
   
    delete ui;
}

void Widget::readyRead_Slot()
{
   
    while(udpSocket->hasPendingDatagrams()){
   

        QByteArray array;

        array.resize(udpSocket->pendingDatagramSize());

        udpSocket->readDatagram(array.data(),array.size());

        QString buf;
        buf = array.data();
        ui->recvEdit->appendPlainText(buf);
    }
}


void Widget::on_openBt_clicked()
{
   
    if(udpSocket->bind(ui->localPort->text().toUInt()) == true)
    {
   
            QMessageBox::information(this,"提示","成功");
}else{
   
             QMessageBox::information(this,"提示","失败");
}
    connect(udpSocket,SIGNAL(readyRead()),this,SLOT(readyRead_Slot()));
}

void Widget::on_sendBt_clicked()
{
   
    quint16 port;

    QString sendbuff;

    QHostAddress address;



    address.setAddress(ui->aimIp->text());


    sendbuff = ui->sendEdit->text();

    port = ui->aimPort->text().
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值