QTalk 基于Qt的局域网聊天软件(开源,仅win平台)(beta 0.01)
1、介绍
希望大家一起支持开源运动,互相促进,欢迎指出问题
现在网上的资源动不动就收费,很多博客还是抄来的,居然都收费,真是醉了
- 支持注册账号,账号登录等功能
- 收到消息弹窗提示
- 点击关闭到托盘
- 在线列表上线下线自动更新
- 记住账号(不能记住密码,仅仅记住密码不能保密懒的做了,带加密功能的记住密码后续加入)
- 记住服务器配置
- 聊天气泡(大部分气泡功能使用了“沙师弟”的开源代码,表示感谢,气泡功能开源项目地址)
- 注册账号不能有重名
- 服务器采用控制台形式
- 支持聊天记录保持(没有保存,只是聊天界面隐藏再次弹出有记录,后续会加入记录保存到数据库功能)
- 已知问题
- 上班业余时间挤出来,软件写的比较简陋,代码可能有些变量和函数命名和写法未严格按代码规范来些,软件架构可能有不合理的地方,多多包涵
- 美化问题,目前只是仓促写完功能,简单修改了下qss,没有仔细美化,后续有时间会好好搞搞,用ps修修,目前用户头像不能自定义,是用的随机选择
- 测试的少,可能有未知bug
- 聊天界面点击关闭有一定几率导致软件关闭(偶尔遇到过一两次,几率未知)
- 目前只有单对单聊天功能,计划后续加入emoji,群聊比较简单就懒的做了
部分效果
服务器
使用控制台,懒的做界面了
客户端
- 登录和配置服务器
登录
配置
记住账号
- 登录成功后
主界面
在线界面
聊天界面
收到消息弹窗
2、代码使用说明
使用编译好的工程
-
依赖条件
-
使用的sql server数据库,需要自己安装sql serser,配置ODBC
-
数据库增加登录名“lu”,密码设置为“vvvv”
-
添加数据库,库名必须为“ChatUsers”
-
添加数据表,两个,名称分别为:“user_pwd”,“online_user”,可以使用“发行/sql”文件夹中的sql脚本
-
先运行Server文件夹中的server.exe,再点击Clien文件夹中的client.exe运行
-
点击齿轮,配置服务器,ip为“1270.0.1”,端口为“12345”
-
注册
在账号密码框中输入你要注册的账号和密码,长度不限(大于0),然后点击下图中的按钮,系统自动检测是否已经被注册,返回注册结果 -
聊天
如果除你之外有人在线,可以双击头像,打开聊天界面
聊天界面的最小化按钮可以关闭(其实是隐藏)界面,聊天历史不会丢失,关闭按钮会直接关闭且丢失历史记录
使用源代码自己编译
目前我的工具链版本qt5.15版本和vs2019的C++编译器,目前在我自己电脑编译没有问题
-
服务器代码结构如下,其中画线部分未起作用,留以后的命令操作功能(服务器是控制台形式)
-
还是要安装数据库,用啥自己选,推荐sql server
-
在下图代码中修改你自己的数据库配置
-
用qt creator打开服务器和客户端代码,编译
-
第一次编译可能会有各种报红的地方,仔细研究,一般是配置问题,具体每个人都情况不一样,大家自己研究吧