前言:
现时各位老铁们对“netty udp组播”可能比较重视,兄弟们都想要知道一些“netty udp组播”的相关知识。那么小编同时在网络上收集了一些关于“netty udp组播””的相关文章,希望你们能喜欢,咱们一起来学习一下吧!基本流程简单聊天程序
#include "server.h"#include <QApplication>#include "client.h"int main(int argc, char *argv[]){ QApplication a(argc, argv); server w; w.show(); Client c; c.setWindowTitle("client"); c.show(); return a.exec();}
#include "server.h"#include "ui_server.h"server::server(QWidget *parent) : QWidget(parent), ui(new Ui::server){ ui->setupUi(this); ui->sip_port->setText("8888"); ui->cip_port->setText("9999"); ui->cip_lineEdit->setText("127.0.0.1"); udp1 = new QUdpSocket(this); udp1->bind(ui->sip_port->text().toInt()); // send msg connect(ui->send, &QPushButton::clicked, this, [=](){ udp1->writeDatagram(ui->msg->toPlainText().toUtf8(),QHostAddress(ui->cip_lineEdit->text()),ui->cip_port->text().toInt()); ui->log->append("Me say: " + ui->msg->toPlainText()); ui->msg->clear(); }); // read msg connect(udp1, &QUdpSocket::readyRead, this, [=](){ qint64 size = udp1->pendingDatagramSize(); QByteArray array(size,0); udp1->readDatagram(array.data(),size); ui->log->append(array); });}server::~server(){ delete ui;}
点击领取Qt学习资料+视频教程~「链接」
#ifndef SERVER_H#define SERVER_H#include <QWidget>#include <QUdpSocket>namespace Ui {class server;}class server : public QWidget{ Q_OBJECTpublic: explicit server(QWidget *parent = 0); ~server();private: Ui::server *ui; QUdpSocket* udp1;};#endif // SERVER_H
#include "client.h"#include "ui_client.h"Client::Client(QWidget *parent) : QWidget(parent), ui(new Ui::Client){ ui->setupUi(this); ui->sip_port->setText("8888"); ui->cip_port->setText("9999"); ui->sip_lineEdit->setText("127.0.0.1"); udp2 = new QUdpSocket(this); udp2->bind(ui->cip_port->text().toInt()); // send msg connect(ui->send, &QPushButton::clicked, this, [=](){ udp2->writeDatagram(ui->msg->toPlainText().toUtf8(),QHostAddress(ui->sip_lineEdit->text()),ui->sip_port->text().toInt()); ui->log->append("Me say: " + ui->msg->toPlainText()); ui->msg->clear(); }); // read msg connect(udp2, &QUdpSocket::readyRead, this, [=](){ qint64 size = udp2->pendingDatagramSize(); QByteArray array(size,0); udp2->readDatagram(array.data(),size); ui->log->append(array); });}Client::~Client(){ delete ui;}
#ifndef CLIENT_H#define CLIENT_H#include <QWidget>#include <QUdpSocket>namespace Ui {class Client;}class Client : public QWidget{ Q_OBJECTpublic: explicit Client(QWidget *parent = 0); ~Client();private: Ui::Client *ui; QUdpSocket* udp2;};#endif // CLIENT_H组播
#include "client.h"#include "ui_client.h"Client::Client(QWidget *parent) : QWidget(parent), ui(new Ui::Client){ ui->setupUi(this); ui->sip_port->setText("8888"); ui->cip_port->setText("9999"); ui->sip_lineEdit->setText("127.0.0.1"); udp2 = new QUdpSocket(this); // if you want to receive must bind port //udp2->bind(ui->cip_port->text().toInt()); udp2->bind(QHostAddress::AnyIPv4,ui->cip_port->text().toInt()); // 加入到组播的组中 udp2->joinMulticastGroup(QHostAddress("244.0.0.10")); // send msg connect(ui->send, &QPushButton::clicked, this, [=](){ udp2->writeDatagram(ui->msg->toPlainText().toUtf8(),QHostAddress(ui->sip_lineEdit->text()),ui->sip_port->text().toInt()); ui->log->append("Me say: " + ui->msg->toPlainText()); ui->msg->clear(); }); // read msg connect(udp2, &QUdpSocket::readyRead, this, [=](){ qint64 size = udp2->pendingDatagramSize(); QByteArray array(size,0); udp2->readDatagram(array.data(),size); ui->log->append(array); });}Client::~Client(){ delete ui;}
#include "server.h"#include "ui_server.h"server::server(QWidget *parent) : QWidget(parent), ui(new Ui::server){ ui->setupUi(this); ui->sip_port->setText("8888"); ui->cip_port->setText("9999"); ui->cip_lineEdit->setText("127.0.0.1"); udp1 = new QUdpSocket(this); udp1->bind(ui->sip_port->text().toInt()); // send msg connect(ui->send, &QPushButton::clicked, this, [=](){ udp1->writeDatagram(ui->msg->toPlainText().toUtf8(),QHostAddress("240.0.0.10"),ui->cip_port->text().toInt()); ui->log->append("Me say: " + ui->msg->toPlainText()); ui->msg->clear(); }); // read msg connect(udp1, &QUdpSocket::readyRead, this, [=](){ qint64 size = udp1->pendingDatagramSize(); QByteArray array(size,0); udp1->readDatagram(array.data(),size); ui->log->append(array); });}server::~server(){ delete ui;}
#include "server.h"#include "ui_server.h"server::server(QWidget *parent) : QWidget(parent), ui(new Ui::server){ ui->setupUi(this); ui->sip_port->setText("8888"); ui->cip_port->setText("9999"); ui->cip_lineEdit->setText("127.0.0.1"); udp1 = new QUdpSocket(this); udp1->bind(ui->sip_port->text().toInt()); // send msg connect(ui->send, &QPushButton::clicked, this, [=](){ udp1->writeDatagram(ui->msg->toPlainText().toUtf8(),QHostAddress("255.255.255.255"),ui->cip_port->text().toInt()); ui->log->append("Me say: " + ui->msg->toPlainText()); ui->msg->clear(); }); // read msg connect(udp1, &QUdpSocket::readyRead, this, [=](){ qint64 size = udp1->pendingDatagramSize(); QByteArray array(size,0); udp1->readDatagram(array.data(),size); ui->log->append(array); });}server::~server(){ delete ui;}
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #netty udp组播 #c语言udp组播