博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
qt编程 windows下的udp通信
阅读量:3950 次
发布时间:2019-05-24

本文共 2565 字,大约阅读时间需要 8 分钟。

分享一下我老师大神的人工智能教程!零基础,通俗易懂!

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

qt编程:windows下的udp通信

本文博客链接:,作者:jdh,转载请注明.

环境:

主机:win7

开发环境:qt

功能:

用udp进行收发通信

界面:

源代码:

LssHost.pro:

#-------------------------------------------------## Project created by QtCreator 2013-09-22T09:36:44##-------------------------------------------------QT       += core guiQT       += networkTARGET = LssHostTEMPLATE = appSOURCES += main.cpp\        mainwindow.cppHEADERS  += mainwindow.hFORMS    += mainwindow.ui
mainwindows.h

#ifndef MAINWINDOW_H#define MAINWINDOW_H#include 
#include
namespace Ui {    class MainWindow;}class MainWindow : public QMainWindow{    Q_OBJECTpublic:    explicit MainWindow(QWidget *parent = 0);    ~MainWindow();private:    Ui::MainWindow *ui;    QUdpSocket *udp_socket_tx;    QUdpSocket *udp_socket_rx;    QHostAddress Ip_Tx;    int Port_Tx;private slots:    void on_btn_cfg_clicked();    void on_btn_tx_clicked();    void rx_udp();};#endif // MAINWINDOW_H
mainwindows.cpp:

#include "mainwindow.h"#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent) :    QMainWindow(parent),    ui(new Ui::MainWindow){       ui->setupUi(this);    udp_socket_tx = new QUdpSocket(this);    udp_socket_rx = new QUdpSocket(this);    ui->btn_tx->setEnabled(false);}MainWindow::~MainWindow(){    delete ui;} //接收udp数据void MainWindow::rx_udp(){    qDebug() << "rx";    while (udp_socket_rx->hasPendingDatagrams())    {             QByteArray datagram;             datagram.resize(udp_socket_rx->pendingDatagramSize());             QHostAddress sender;             quint16 senderPort;             udp_socket_rx->readDatagram(datagram.data(), datagram.size(),                                     &sender, &senderPort);             ui->txt_rx->append(datagram);         }}//发送按键void MainWindow::on_btn_tx_clicked(){    QByteArray datagram = ui->txt_tx->toPlainText().toAscii();    udp_socket_tx->writeDatagram(datagram, datagram.size(), Ip_Tx, Port_Tx);}//配置按键void MainWindow::on_btn_cfg_clicked(){    bool ok;    int port_rx = 0;    //获得发送IP和端口    Ip_Tx = QHostAddress(ui->txt_ip->text());    Port_Tx = ui->txt_port_tx->text().toInt(&ok);    //获得接收端口    port_rx = ui->txt_port_rx->text().toInt(&ok);    udp_socket_rx->bind(QHostAddress::Any, port_rx);    //绑定接收信号槽    connect(udp_socket_rx, SIGNAL(readyRead()),this, SLOT(rx_udp()));    ui->btn_tx->setEnabled(true);}
main.cpp:

#include 
#include "mainwindow.h"int main(int argc, char *argv[]){    QApplication a(argc, argv);    MainWindow w;    w.show();    return a.exec();}

           

给我老师的人工智能教程打call!

这里写图片描述
你可能感兴趣的文章
五种力量让你如虎添翼
查看>>
你害怕创新吗
查看>>
创新服务的七要素
查看>>
虚伪的奉承也有效
查看>>
蒂姆·库克的五项核心领导力
查看>>
你为何没有成为领导者
查看>>
一切悲剧都源于不当激励
查看>>
别把用户的高期望混同于好体验
查看>>
动机和机会:推动商业发展的引擎
查看>>
4个信号表明你是一个失败的领导
查看>>
成功谈判 你需要几个锦囊?
查看>>
一个人的宽度决定了他的高度
查看>>
善于拜访是另一种经营智慧
查看>>
打造新老员工双赢机制变对立为统一
查看>>
企业如何避免用错人
查看>>
打掉苹果“无与伦比”的傲慢(人民时评)
查看>>
Creating an Android Project
查看>>
Running Your App (android)
查看>>
Starting Another Activity
查看>>
Starting an Activity
查看>>