Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
zhaomangang committed Dec 23, 2019
1 parent 483e230 commit 2c2d027
Showing 1 changed file with 39 additions and 9 deletions.
48 changes: 39 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,41 @@
# WangWangChat
聊天程序,实现了一些基本功能,欢迎大家修改、指正。
###### 客户端:Qtc++
###### 服务端:C++/C
###### 数据库:Mysql
###### 基本实现了注册、登陆、聊天等业务,注册登陆后回添加两个默认好友,第一个为测试无用,第二个kid为作者本人。目前存在有时收到消息聊天窗口无法自动 弹开等问题。
###### client/demo3为客户端源码
###### server/demo0为服务端源码
###### demoClientRelease为编译好的客户端,可直接下载解压然后点击WangWangchat.exe运行(windows)
###### 注:由于客户端是在Linux下做的,当时看起来圆角的还不错挺好看,结果放到windows下一编译发现巨丑,后面有时间会继续完善,博客中记录了部分过程https://blog.csdn.net/qq_35987486/article/details/92732922
### 项目简介

基于C++的聊天软件。包括PC客户端、Linux服务端。服务端可同时向多个客户端提供服务。客户端包括注册、登陆、好友/群列表展示、群聊、私聊等基本功能。本仓库包括:客户端源码、服务端源码、数据协议、客户端发行版、客户端流程图、服务端流程图以及开发日志

### 主要技术

服务端:使用epoll实现I/O复用从而为多客户端提供服务。同时使用MySQL类内嵌SQL语句从而实现对数据库的访问。

客户端:使用Qt开发,使用QTcpSocket类实现与服务端通信,使用QWidget、QGroupBox与QToolButton实现类似QQ好友列表

数据库:通过建立用户基本信息user_info、好友关系friend、群组关系group、群组基本信息group_info四张表实现对用户信息的存储、组织。

### 开发环境

- 客户端: Windows + Qt5
- 服务端:Linux + C++
- 数据库: MySQL8.0
- 数据交互协议:自定(具体见文档)

### 效果展示

登陆界面:

![1577110794905](C:\Users\98230\AppData\Roaming\Typora\typora-user-images\1577110794905.png)

注册界面:

![1577110899465](C:\Users\98230\AppData\Roaming\Typora\typora-user-images\1577110899465.png)

主界面:

![1577111020223](C:\Users\98230\AppData\Roaming\Typora\typora-user-images\1577111020223.png)

私聊:

![1577111135330](C:\Users\98230\AppData\Roaming\Typora\typora-user-images\1577111135330.png)

群聊:

![1577111380041](C:\Users\98230\AppData\Roaming\Typora\typora-user-images\1577111380041.png)

0 comments on commit 2c2d027

Please sign in to comment.