【QT C++ TCP通信调试助手】
基于Qt5的 c++ Tcp/Ip通信
写在前面的话:
本文是在Qt 5.12.2
平台上用c++
写的tcp
客户端与服务端的局域网通信,使用Qt
自带的组件设计的界面,通过信号与槽
机制实现ui界面中如QPushButton
等组件的功能。另附C#链接:C#版tcp/ip通信
一、Qt中的项目的配置过程:
1.工程创建:打开Qt->新建项目->Application->Qt Widgets Application
2.在工程的.pro
中添加Qt的网络模块如下代码:
QT += network
3.ui界面中的控件布局如下:
4.最终的运行效果:
5.项目文件的结构:
注:其中Headers
中的是.h
文件;Sources
中的是.cpp
文件;Forms
中的是ui
界面;Resources
中的是项目的 资源文件
。
二、TCP server:
1.tcp服务端负责监听ip,与指定的客户端建立连接并通信.
2.在.h
中声明的函数有:
public:void Get_ip();bool send_msg(QString msg);bool send_msgs(QString msg);
private slots://tcp servervoid on_connect_pushButton_clicked();void server_new_connection();void ReadError(QAbstractSocket::SocketError);void socket_Read_Data();void socket_disconnect();void timeUpdate();void on_clear_pushButton_clicked();void on_send_pushButton_clicked();
三、TCP client:
1.负责连接服务端,并与其通信。
2. 在 .h
中声明的函数有:
private slots:void ReadData();void C_ReadError(QAbstractSocket::SocketError);void on_connect_server_pushButton_clicked();void on_clear_pushButton_2_clicked();void on_send_pushButton_2_clicked();
好了今天就写到到这了,最后附上源码的链接如下:
具体的实现过程源码及编译好的应用程序:项目源码
写在最后的话:
这个也是写了好几个版本,最开始时将Server端和Client端分开写的,有两个项目;后来又想着能不能将server和client放在一个项目中。又改了一个版本,在一个项目中封装两个类,server类和client类,通过button来切换服务端和客户端的界面。写完后又想了一下还是感觉不满意,于是又改了一个版本,server和client在一个类里边用Qt自带的组件QTabWidget实现server和client的界面切换,感觉这个版本符合app的使用习惯,最后就使用这个版本了。
嗯 …… 今天就这些了吧,最后再说一句:
有趣的灵魂千里挑一!!!!
”
【QT C++ TCP通信调试助手】相关推荐
- QT编写TCP/UDP调试助手之TCP客户端
效果图: TCP/UDP调试助手之TCP客户端,支持错误信息显示,断开连接后及时释放资源. 一.关键代码 1.在.pro文件中添加QT += network,包含头文件#include <QTc ...
- Qt实践录:TCP网络调试助手
由于项目需要使用到网络调试及测试,为了练手,使用 Qt 编写一个串口调试助手.本文按开发的过程进行简单介绍,同时也涉及部分用到的模块代码.详细代码参考源码仓库. 在代码复用方面,笔者认为 Qt 比 M ...
- Android studio TCP网络调试助手应用开发(支持TCP Server与Client切换)
在前几篇的文章中带大家完成了基于TCP的物联网安卓应用开发,教程内容是创建了一个TCP客户端并连接服务器完成数据通信的过程,后不久又发布了一个ESP8266创建TCP 服务器与安卓的客户端进行通信的一 ...
- Qt关于Tcp通信步骤的总结
Qt中TCP通信,与C++中tcp通信还是有差别的,下面总结一下Qt中TCP通信. 服务端: 创建QTcpServer对象.可以在构造函数中创建,在.h中声明类QTcpServer,并在类中定义其指针 ...
- 学习笔记:使用Qt制作一个串口调试助手
界面设计参考了野火串口调试助手C#版 功能基本实现!实现效果看图: 第一步:制作图形界面 注意控件命名要又辨识度,不然在编写代码时将是很很痛苦的 第二步:添加相应的库 添加此次工程所需要的串口库,在工 ...
- 基于QT的TCP通信
一.简介 TCP通信必须先建立TCP链接,通信端分为客户端和服务器端.QT提供了QTcpServer类和QTcpSocket类用于建立TCP通信应用程序.QTcpServer用于端口监听,建立服务器: ...
- 基于linux和qt的串口通信调试器调的设计及应用,基于linux和Qt的串口通信调试器调的设计及应用...
Q:墼 S ic n Tcnl yI oai ea c nead eho g nvt n rd e o n oH l T技术 基于 I x和 Ot iu n的串口通信调试器调的设计及应用 盂繁磊穆丽红 ...
- TCP网络调试助手上提示错误:“1035 未知错误”的有效解决方法,本人实测确实可行
对于网络调试助手如NetAssist等连接不上服务器且左下角显示"1035 未知错误"的问题,本人困惑许久,参考了网上的多种解决方法,有的说法是网络调试助手的版本太低,在Win10 ...
- Qt安卓app开发,蓝牙通信调试助手,经典蓝牙通信调试工具
目录 软件说明 app界面 源码下载地址 软件说明 1.基于Qt开发,QBluetoothSocket通信: 2.开/关蓝牙.搜索/停止搜索设备.Ascii/Hex收发.收发延迟设置.收发计数等功能: ...
- Qt中Tcp通信的简单使用二
tcp编程中写的一个简单的单项传输数据的小例子,和上一节一样,分为客户端和服务端程序,下面看一下界面的效果. 创建的方法和之前一样,上面上代码: 客户端 Client.h #ifndef CLIENT ...
最新文章
- 在php代码中加视频,php – 如何在laravel代码中嵌入视频
- 如何实现少样本学习?先让神经网络get√视觉比较能力
- Cloudera Manager 和CDH6.0.1安装,卸载,各步骤截图(此博文为笔者辛苦劳作最终生成的,使用了3个熬到凌晨2~4点的夜晚,外加一个周末完成,请转载时记录转载之处,谢谢)
- 监听列表事件的监控核心技术(编写代码)
- 实验四 图的实现与应用
- 《程序员面试金典》合法括号判断
- ZZULIOJ 1067:有问题的里程表
- 利用display属性写的遮罩层
- zabbix监控进程的CPU和内存占用量
- 1040. 有几个PAT(25)
- 文件上传------c#
- 三款免费好用的Gif制作神器
- PID算法基本原理及整定实现方法
- 搜狗输入法 VS 拼音加加
- 5.2.1_3 普通心理学(彭冉玲第四版) - 第2章 心理的神经生理机制
- 做财务讲师真的好吗?启宣教育告诉你答案
- mysql myisam转innodb_转:MySQL从MyISAM引擎转换到InnoDB引擎需要注意的地方
- 转 -- Zynga:从Amazon公共云到zCloud私有云
- 用java将数组中的数字倒过来_有数组a[n],用java 代码将数组元素顺序颠倒
- 使用EasyCV Mask2Former轻松实现图像分割
热门文章
- FileUpload类别FileUpload1.FileName和FileUpload1.PostedFile.FileName差异
- 适用于Windows的Xcode:在PC上安装Xcode的5种方法
- word退出时,提示”更改会影响共用模板normal.dotm“的处理办法
- 数据库系统——基本概念
- Java 的三种 Base64
- CentOS 6.2 + CUPS + AirPrint for iOS
- DevComponents.DotNetBar2 美化包使用以及验证教程
- 各种数据库之间数据迁移工具
- 使用VM12虚拟机安装CentOS7
- 安装虚拟机和卸载虚拟机 vm15 vm12