使用使用Qt中的中的tcp通信协议,构建客户端和服务端,实现的局域网通信软通信协议,构建客户端和服务端,实现的局域网通信软
件(简单版本)件(简单版本)
Qt中使用中使用Tcp构建通信聊天信息发送连接构建通信聊天信息发送连接1.简介2.项目创建和界面构建1)流程图2)项目构建3)界面构建3.代码设计1)项目pro添加2)客户
端设计a. clientwidget.hb.clientwdige.cpp3)服务端设计a.serverwidget.hb.serverwidget.cpp4.源代码附录
clientwidget.hclientwidget.cppserverwidget.hserverwidget.cpp
1.简介简介
TCP通信协议是面向对象,可靠的连接服务,正因为这是它最大的特点,因此在诸多领域应用广泛,在使用通信协议是面向对象,可靠的连接服务,正因为这是它最大的特点,因此在诸多领域应用广泛,在使用Qt进行面向对象的设计的时候,进行面向对象的设计的时候,
也常常用到也常常用到TCP通信,而在通信,而在Qt中,中,TCP协议被封装成了一个更易调用的类。此篇博文将使用协议被封装成了一个更易调用的类。此篇博文将使用Qt中的中的TCP通信来实现客户端和服务端的连接交通信来实现客户端和服务端的连接交
互通信,以此作为延伸。互通信,以此作为延伸。
在之前的一篇博文中在之前的一篇博文中 ,,Linux中中C语言构建语言构建TCP通信,使用了通信,使用了C语言对语言对TCP协议进行调用,来实现客户端和服务端的通信连接。而协议进行调用,来实现客户端和服务端的通信连接。而Qt中的中的TCP
通信连接步骤和通信连接步骤和C语言中原生语言中原生tcp连接的步骤一样,大体都是分为以下大类连接的步骤一样,大体都是分为以下大类
创建套接创建套接字
绑定本机地址和端口绑定本机地址和端口
设置监听套接字设置监听套接字
主动向服务器(客户端)发送请求主动向服务器(客户端)发送请求
客户端(服务器)接受连接请求客户端(服务器)接受连接请求
接受接受/发送数据发送数据
(双方)关闭套接字(双方)关闭套接字
区别在于,区别在于,Qt中调用中调用TCP的方式简单,可以实现如下的效果的方式简单,可以实现如下的效果
以下是详细的实际实现以下是详细的实际实现
2.项目创建和界面构建项目创建和界面构建
1)流程图)流程图
TCP协议通信逻辑图有下图,根据此逻辑图,可以更好的理解协议通信逻辑图有下图,根据此逻辑图,可以更好的理解Qt中的中的TCP协议的调用协议的调用
2)项目构建)项目构建
创建创建widget项目,除自有界面外,再添加一个新的界面,构建如下图所示的项目文件树项目,除自有界面外,再添加一个新的界面,构建如下图所示的项目文件树