基于QT实现的QQ聊天简易版(UDP通信版)

简介: 源码已经给小伙伴们整理好了,微信搜索 嵌入式工程之家 关注公众号回复 QQ 即可获得源码和详细操作指示哦~

效果图

image.gif 编辑

image.gif 编辑

image.gif 编辑

项目功能:

模拟QQ的登陆以及好友上线时其他客户端出现对方的信息,点击头像后可以进行聊天。这个项目主要是运用了QT中UDP通信的技术,在登陆完成后进入的主页框是运用了Lable组件的运用,以及图片的插入等,好友列表则是运用了QListWidgetitem技术进行对好友页面的增加。

技术问题:

项目中会有许多多文件需要调用的变量,例如性别,名字等,这时可以将其独自分为一个类去做,供全局调用。初开始写时逻辑可能有点会乱,但是顺清思路后再去写会觉得非常简单逻辑。

Udp的技术主要运用到他的读和写,如果有i小伙伴不会可以看看这个大哥的链接:

Qt网络编程(2):QUdpSocket的基本使用-CSDN博客

转载于:CSDN龚建波

接下来时程序写出的时的思路,跟大家分享一下。

我习惯于先把基础ui的界面做好后再去着手逻辑,整个逻辑应该围绕着UDP的连接以及列表元素的增加去写,首先去建立UDP的连接,并检测根据分配的ID去互相通信是否可以成功。其次开始着手去写增加元素列表的逻辑,在一位客户端成功连接时应该去调用一个增加列表元素的函数,根据新用户的名字和头像去设置列表元素的样式,其次再去设置双击按键,点击后会开启聊天框。开启聊天框后应当先去拿取对方用户的名字和头像去设置聊天框,然后去根据时间戳去转换时间,最后实现接收消息。

思路图:

image.gif 编辑

源码已经给小伙伴们整理好了,微信搜索 嵌入式工程之家 关注公众号回复 QQ 即可获得源码和详细操作指示哦~

相关文章
|
7月前
|
存储 传感器 安全
【串口通信】使用C++和Qt设计和实现串口协议解析器(二)
【串口通信】使用C++和Qt设计和实现串口协议解析器
572 0
|
5月前
|
网络协议
Qt中的网络编程(Tcp和Udp)运用详解以及简单示范案例
Tcp和Udp是我们学习网络编程中经常接触到的两个通讯协议,在Qt也被Qt封装成了自己的库供我们调用,对于需要进行网络交互的项目中无疑是很重要的,希望这篇文章可以帮助到大家。 是关于Qt中TCP和UDP的基本使用和特点:
715 7
|
2月前
|
网络协议 Linux 网络性能优化
Linux C/C++之TCP / UDP通信
这篇文章详细介绍了Linux下C/C++语言实现TCP和UDP通信的方法,包括网络基础、通信模型、编程示例以及TCP和UDP的优缺点比较。
40 0
Linux C/C++之TCP / UDP通信
|
7月前
|
网络协议 算法 Java
【Java网络编程】网络编程概述、UDP通信(DatagramPacket 与 DatagramSocket)
【Java网络编程】网络编程概述、UDP通信(DatagramPacket 与 DatagramSocket)
71 3
|
3月前
|
C语言 C++ Windows
QT多插件通信框架CTK编译记录
本文记录了编译QT多插件通信框架CTK的过程,包括编译结果截图、部署配置、Log4Qt编译配置、参考链接和拓展资料。文中提供了详细的编译步骤和配置文件示例,以及相关的资源链接。
QT多插件通信框架CTK编译记录
|
3月前
|
C语言
C语言 网络编程(七)UDP通信创建流程
本文档详细介绍了使用 UDP 协议进行通信的过程,包括创建套接字、发送与接收消息等关键步骤。首先,通过 `socket()` 函数创建套接字,并设置相应的参数。接着,使用 `sendto()` 函数向指定地址发送数据。为了绑定地址,需要调用 `bind()` 函数。接收端则通过 `recvfrom()` 函数接收数据并获取发送方的地址信息。文档还提供了完整的代码示例,展示了如何实现 UDP 的发送端和服务端功能。
|
4月前
|
网络协议 数据处理 C语言
网络编程进阶:UDP通信
网络编程进阶:UDP通信
206 0
|
4月前
|
C语言
【C语言】UDP通信
【C语言】UDP通信
47 0
|
5月前
|
网络协议 网络架构
【网络编程入门】TCP与UDP通信实战:从零构建服务器与客户端对话(附简易源码,新手友好!)
在了解他们之前我们首先要知道网络模型,它分为两种,一种是OSI,一种是TCP/IP,当然他们的模型图是不同的,如下
202 1
|
5月前
|
网络协议 Java 数据处理
(一)Java网络编程之计网基础、TCP-IP协议簇、TCP、UDP协议及腾讯QQ通信原理综述
就目前而言,多数网络编程的系列的文章都在围绕着计算机网络体系进行阐述,但其中太多理论概念,对于大部分开发者而言,用途甚微。因此,在本系列中则会以实际开发者的工作为核心,从Java程序员的角度出发,详细解读Java的网络编程核心内容。