第八天项目日记
1、今天总结
完成用户加入房间的设计
用户加入直播间后,用户列表会显示用户加入,用户退出后用户列表会消失
完成送礼功能
增加房间消息,之前用户房间没有消息内容,现在新增一个
2、设计思路
对于加入房间和退出房间
加入和退出之后给服务器发消息,服务器回复其他客户端该消息,其他客户端收到该消息之后删除对应用户即可。
离开直播间
客户端离开房间之后 服务器是知道客户端离开哪个房间的,服务器给加入该房间的客户端以及该主播发送该用户离开的消息即可
礼物
刷礼物这里采用了播放动图的方式,客户端送出礼物之后,会发送消息给服务器,服务器进行转发,转发之后客户端收到消息之后播放资源文件
消息定义
需要注意的是礼物播放完图片之后要进行资源回收不然 程序内存会一直变大直至崩溃
3、代码说明
服务器
服务器没有新增功能只是消息转发 这里不做过多阐述
客户端
添加资源文件
界面修改
主播界面修改
用户界面修改
对于动态图片的显示
使用 QMovie
为了避免动态图片一直播放导致内存一直变大,只用一个QMovie和一个QLabel
初始化时先将两个指针置为null
实现一个礼物显示接口函数
这里是实现接口
调用接口还是在widget中收到对应消息之后进行调用即可
4、项目源码
5、效果展示
1、测试加入直播退出直播房间列表有无变化
2、测试礼物
6、总结
还有私聊功能没有做,另外观看房间中的聊天内荣没有添加
如果需要添加在widget.cpp中添加即可
加油!!!!!!