您的位置:首页 > 编程语言 > C语言/C++

基于Qt5.9Creator的一个简单socket通信实例(C++语言,win7 64系统)

2018-01-29 11:42 1111 查看
本文章主要总结用Qt5.9Creator编写一个简单服务器端和客户端实例。该实例使用socket通信,基于TCP/IP协议,具体的模块分为四大部分。第一部分是服务器端的编写,第二部分是客户端的编写,第三部分是测试部分,第四部分是源代码的下载地址。下面将详细讲述这三大模块。

采用的系统是:win7 64位,服务器和客户端都运行在本机电脑上。

一、服务器编写

服务器端的编写主要分为六大步骤,分别为创建对象(QTcpServer对象),侦听端口(listen()函数),连接newConnection客户端信号,发送数据(write()函数),接收缓冲区数据(readAll()函数),取消侦听(close()函数)。下面将按照这六大步骤来创建一个服务器端程序。

1.1新建一个widget工程,工程名称命名为tcpServerSocketCommunication,基类选择QMainWindow。并且在ui界面上拖入如下内容



1.2在.pro工程里面,添加如下内容,添加完后记得保存!



1.3在mainwindow.h头文件添加如下内容:





1.4在mainwindow.cpp的构造函数中,添加如下内容:



1.5在ui界面上,添加侦听按钮和发送按钮槽函数,同时在mainwindow.h头文件中,写入如下三个槽函数(连接槽函数,读数据槽函数,断开槽函数):



1.6在mainwindow.cpp源文件中,分别添加这五个槽函数的内容,如下面所示:











1.7在mainwindow.cpp的析构函数中,添加如下代码。同时在mainwindow.cpp源文件关联头文件:





1.8程序构建运行,结果如下图所示:



二、客户端编写

客户端的编写主要分为五个步骤,分别是创建套接字对象(QTcpSocket类),连接服务器(connectToHost()函数),向服务器发送数据(write()函数),读取缓冲区数据(readAll()函数),断开与服务器连接(disconnectFromHost()函数)。

2.1新建一个widget工程,工程名称命名为tcpClientSocketCommunication,基类选择QMainWindow。并且在ui界面上拖入如下内容



2.2在.pro工程里面,添加如下内容,添加完后记得保存!



2.3在mainwindow.h头文件添加如下内容:



2.4在mainwindow.cpp的构造函数中,添加如下内容:



2.5在ui界面上,添加侦听按钮和发送按钮槽函数,同时在mainwindow.h头文件中,写入如下三个槽函数(连接槽函数,读数据槽函数,断开槽函数):



2.6在mainwindow.cpp源文件中,分别添加这五个槽函数的内容,如下面所示:









2.7在mainwindow.cpp的析构函数中,添加如下代码。同时在mainwindow.cpp源文件关联头文件:



2.8程序构建运行,结果如下图所示:



三、测试和结果

3.1分别运行服务器端和客户端,界面如下图所示:



3.2点击服务器端的监听按钮,然后再点击客户端的连接按钮,弹出框提示:连接服务器成功!如下图所示:



3.3此时服务器和客户端连接成功,可以进行通信和消息的发送了。在客户端的发送区域,输入:I am client message!,点击发送按钮,如下图所示:





3.4在服务器端的发送消息编辑框,输入:I am server message!,然后点击发送按钮,结果如下图所示:





四、源代码下载地址:
http://download.csdn.net/download/naibozhuan3744/10229293
参考内容:
http://blog.csdn.net/u014695839/article/details/70041771(推荐参考这篇文章) https://www.cnblogs.com/findumars/p/5838531.html http://blog.csdn.net/u012997311/article/details/50996701
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐