40.qt quick- 高仿微信实现局域网聊天V4版本(支持gif动图表情包、消息聊天、拖动缩放窗口、支持Linux编译)
在上章37.qt quick- 高仿微信实现局域网聊天V3版本(添加登录界面、UDP校验登录、皮肤更换、3D旋转),我们已经实现了:
- 添加登录界面、
- UDP校验登录、
- 皮肤更换、
- 3D旋转(主界面和登录界面之间切换) 、
所以本章实现:
- 支持拖动和更改窗口大小、
- 可以单独聊天、也可以在聊天室所有人聊天、
- 支持收发gif表情包(支持粘贴复制)、
- 自动刷新当前好友在线人数等、
- 同时支持Linux和Windows编译运行
1.界面展示
界面布局如下所示:
界面截图如下所示:
效果图如下所示:
有点大,可能加载不了,不过已经上传到bilibili了https://www.bilibili.com/video/BV1Ao4y1S7zX
由于代码量有点多,所以讲解重点的部分
2.支持Linux编译
我这里是交叉编译到树莓派运行,在Linux下则取消了3D旋转,如下图所示:
动图就不上传了,视频已经上传到bilibili了 https://www.bilibili.com/video/BV1JU4y1H7xc/
Qt Quick文章已移植到CSDN博客:https://blog.csdn.net/qq_37997682/category_11280267.html,本博客停止更新。
专栏入门到精通、讲解所有常用知识、长期不定时更新高质量文章、并为订阅该专栏的朋友们创立一个专栏文章资源群(CSDN专栏第一章底部有群号)
涉及到的资源有如下所示
1.网站导航界面
通过GridLayout来做一个简易的网站导航界面,并支持自适应界面.当我们点击其中的某个按钮,就会打开浏览器跳到对应的网站上.
2.图片浏览器-支持多个图片浏览、缩放、旋转、滑轮切换图片
代码介绍
- flick : 用来存放放置当前大图的一个Flickable容器
- photoImage : 用来显示当前大图的一个Image
- fileGroup : 文件选项组合框,里面有"打开文件"、"上一张"、"下一张"按钮
- ctrlGroup : 图片控制组合框,里面有"放大"、"旋转"滑动条
- imageInfoGroup: 基本信息组合框,里面有"尺寸"、"路径"文本
- authorInfoGroup: 关于组合框,里面有笔者信息
- images: 存放用户打开的所有图片的浏览区
3.Qt Quick QML-500行代码实现“合成大西瓜游戏
代码中逻辑主要如下所示:
- 移动水果,并进行边界检测
- 计算水果之间碰撞检测,如果是两个相同的水果,则进行水果合并,否则就计算小球碰撞后的移动方向.
- 判断水果是否溢出终点线,如果溢出,则将每个水果进行破碎,弹出结束画面,等待下一局
4.高仿微信实现局域网聊天V1~V4版本
在V3版本https://blog.csdn.net/qq_37997682/article/details/119589754我们已经实现了:
- 添加登录界面、
- UDP校验登录、
- 皮肤更换、
- 3D旋转(主界面和登录界面之间切换) 、
所以V4版本实现:
- 支持拖动和更改窗口大小、
- 可以单独聊天、也可以在聊天室所有人聊天、
- 支持收发gif表情包(支持粘贴复制)、
- 自动刷新当前好友在线人数等、
- 同时支持Linux和Windows编译运行
5.50行实现QML滑动条
6.qt quick-QML水纹波进度条
7.qt quick-ListView拖拽选中换行、添加、删除、移动动画
8.qt quick-自定义非常好看的qml虚拟软键盘-支持换肤、动态加载移除语言
9.qt quick-CandlestickSeries实现K线图+行情列表+详细列表+线拖拽
10.qt quick-自定义LineSeries、实现箭头线、标签序号、拖拽/插入/删除
11.qt quick-自定义LineSeries之添加贝塞尔曲线V2版本
12.qt quick-MediaPlayer视频播放器
13.带数值双向滑动器RangeSlider(支持显示无穷大+)
14.实现的home界面
15.QML调色板(取色器)实现
16.QML高德地图实现之V1版本(跨平台支持、无需浏览器内核,运行高效迅速)
GIF如下所示(文件太大上传失败,已压缩):
人间有真情,人间有真爱。