QT实现的基于TCP Socket的共享白板

一、课程设计题目

共享白板:实现基于服务器转发的多点间的文字、简单图案等信息的实时共享。

二、实验要求

类似于共享电子白板系统,是一个服务器端和多个同步的客户端进行信息交流的过程。在服务器端,我们记录加入服务器要通过该服务器进行信息共享的白板的相应的IP信息以及它们相应的动作;在客户端,我们通过连接相应的服务器,在客户端白板进行简单图案的绘画操作就可以在多个加入服务器的客户端实现图案的共享。

三、实验任务和目的

通过计算机网络的课程设计,使学生了解、掌握TCP、UDP协议的原理;了解、掌握利用Winsock API编程的方法;了解、掌握应用协议设计的思想;利用Winsock API编制一个能部署在Internet上的共享白板。

四、需求分析

本次课程设计的目的是设计一个能部署在Internet上的共享白板。顾名思义,共享白板意即要实现信息的共享,能够实时地将一客户端的信息与其他客户端的信息进行交换,对其它客户端的行为能够做出及时的响应。当今,共享白板的应用时非常广泛的,用的最多的应该就是远程网络白板的共享了,这项技术的应用,我们可以实现远程教学,最大限度地使教育资源得到共享,帮助贫困地区的学生们也能够享受高质量、名师的优质教育资源。在此次课程设计中,我们模拟了共享电子白板系统,初步实现了共享白板的功能,达到了预期目标。

本次课程设计我们通过运用所学知识,融合网络编程的相关知识达到此次课程设计的要求。我们用C++ GUI Qt4 编程来进行设计实现。

参考文档和完整的文档和源码下载地址:

https://www.write-bug.com/article/1514.html

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

Android So动态加载 优雅实现与原理分析

背景:漫品Android客户端集成适配转换功能(基于目标识别(So库35M)和人脸识别库(5M)),导致apk体积50M左右,为优化客户端体验,决定实现So文件动态加载.!(https://oscimg.oschina.net/oscnet/00d1ff90e4b34869664fef59e3ec3fdd20b.png)点击上方“蓝字”关注我