书签基于qt4的视频聊天工具的设计与实现论文设计

popo聊天  时间:2021-01-30  阅读:()

太 原 理 工 大 学

毕业设计论文任务书

基于QT4的视频聊天工具的设计与实现

摘要

本文主要介绍了如何用QT技术来实现一个局域网的聊天软件。论文阐述了QT的概念发展历史功能及其应用平台以及QT的发展前景讲述了socket通信的工作原理及其应用方面分别叙述了TCP/IP通信和UDP通信的工作流程和应用方面 以及他们之间的区别。本文还介绍了软件的需求分析界面设计及其测试用例并且比较详细的描述了整个软件的实现过程。

本软件主要是应用于局域网的聊天及文件传输采用最基础的C++语言用QT界面开发工具来开发使用了TCP/IP和UDP通信协议进行通信。该软件应用QT进行界面开发能够开发出优美的界面TCP/IP通信实现文件的传送用UDP通信实现聊天信息之间的传输。

关键词 QT TCP/IP通信 UDP通信

The design and implementation of video chat tool based on QT4

AB S TRAC T

This paper describes how to use QT technology to achieve a software ofchat base onLAN.This paper describes the conception of QT,and the history ofQT,and the function ofQT,and the Application Platform ofQT,and the development prospects ofQT.This paper alsodescribes how to work of socket communication and the ways about it be used.It introducethe workflow and the ways about it be used that about TCP/IP communication and UDPcommunication,and the different between them.This paper also introduce the demandanalysis,the design of interface,and the test case about the software.It also describes therealization proces s about so ftware in detail.

This software is used to chat on LAN and send files.It use C++language and QTdevelop so ftware to develop this so ftware.The so ftware use TCP/IP communication and UDPcommunication to communicate.The interface of the software is developed by use QTdevelop so ftware.The QT develop so ftware can create beautiful interface.The so ftware useTCP/IP deal to send files,and use UDP deal to chat with others.

Key words: QT;TCP/IP communication;UDP communication;

目 录

摘要. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .i

ABSTRACT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .i i

1 绪论. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1. 1 软件开发的背景和目的. . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1.2 聊天软件在当今的形式. . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1.3 软件设计和研究的方法. . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1.4 设计过程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1.5 研究内容. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

2 系统开发技术及开发工具. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

2. 1 QT的概念. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

2.2 QT的发展. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

2.2. 1 发展历史. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

2.2.2 发展前景. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

2.3 QT的主要功能. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

2.4 QT的应用平台. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

2.5 OpenCV介绍. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3 需求分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3. 1 引言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3. 1. 1 编写目的. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3.2 任务概述. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3.2. 1 任务目标. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3.2.2 运行环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3.3 协议需求分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3.3. 1 协议. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3.3.2 UDP协议. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3.3.3 协议的区别. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3.3.4 功能需求分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

4 概要设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

4. 1 设计目的. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

4.2 系统功能配置. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

4.2. 1 硬件环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

4.2.2 软件环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

4.3 系统功能模块说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

4.4 系统功能模块图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12

5 详细设计及实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

5. 1 聊天界面的设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

5. 1. 1 获取端口信息. . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

5. 1.2 发送信息界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

5. 1.3 接收信息界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

5. 1.4 改变编辑字体界面. . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

5.2 文件传送界面的设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

5.3 视频界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

6 软件测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

6. 1 测试项目. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

6.2 测试方法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

6.3 聊天测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

6.4 视频聊天测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

6.5 字体改变测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

6.6 文件传送测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

6.7 多平台聊天测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

7 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33

参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34

致谢. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35

附录一英文原文. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

附录二 中文译文. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1 绪论

1 . 1 软件开发的背景和目的

近些年,人们的生活节奏越来越快。人们的生活压力越来越大精神也越来越紧张人们经常会出现不同的问题。在这时人们往往会想到与人交流来缓解自己的压力来发泄心中的不快。因此聊天时一种和好的方式来使自己在忙碌之中得到放松。

网络聊天可以提升打字速度还能转移注意力使自己的精神得到放松。聊天还能医治抑郁提升自己的语言表达。在聊天中同学善意的批评老师精心的指点或者得到一些热心人士的解答都能使我们在聊天中得到放松得到解决问题的办法。聊天对人是有许多益处但是很多人却会因为网络出现问题了导致我们不能聊天。就像我们学校晚上经常断网这样同学之间视频聊天或者传递资料将很不方便。同学们急切需要一种聊天软件可以使同学们打发空闲的时间交流感情共享资源。因此我设计了一款局域网视频聊天软件。

1 .2 聊天软件在当今的形式

如今各种各样的网络聊天工具到处存在但是大部分软件都是只能在Windows平台上或者单一的平台上运行这具有很大的局限性因此我局域QT这个跨平台开发工具开发了一个聊天软件。这个聊天软件能够实现局域网内的通信和文件传输这十分方便同学们的需求。

1 .3 软件设计和研究的方法

由于TCP/IP通信和UDP通信用不同的软件实现的原理都类似 因此通信方面可以参考的内容十分丰富。聊天界面的设计主要参考QQ聊天软件的界面设计。

1 .4 设计过程

1.对聊天软件界面应该十分熟悉并且设计出一款和谐美观的聊天界面

2.创建登陆设定针对不同的人建立相应的登陆方式

3.建立UDP通信连接使软件能够实现聊天通信

4.建立TCP/IP通信连接使软件能够实现文件传输

5.优化界面添加聊天的其他设置

1 .5 研究内容

该软件的研究内容主要在两方面

1.QT开发在界面设计方面是否能够设计出优美的界面比其他开发软件是否更具优势 以及通信方面是否可行。

2.QT开发的软件是否具有可移植性跨平台性是否十分优越于其他开发软件。

2 系统开发技术及开发工具

2. 1 QT的概念

QT在网上有多种解释如Quantity、 Quart、 Quarter等/Qt是诺基亚开发的一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。

2.2 QT的发展

Qt是一个跨平台的C++图形用户界面库由挪威TrollTech公司于1995年底出品。 Trolltech公司在1994年成立但是在1992年成立Trolltech公司的那批程序员就已经开始设计Qt了 Qt的第一个商业版本于1995年推出。

2.2. 1 发展历史

Qt经历了漫长的发展

1996 Oct KDE组织成立。

1998 Apr 05 Trolltech的程序员在5天之内将Netscape5.0从Motif移植到Qt上。

1998 Apr 08 KDE Free Qt基金会成立。

1998 Jul 09 Qt 1.40发布。

1998 Jul 12 KDE 1.0发布。

1999 Mar 04 QPL 1.0发布。

1999 Mar 12 Qt 1.44发布。

1999 Jun 25 Qt 2.0发布。

1999 Sep 13 KDE 1. 1.2发布。

2000 Mar 20嵌入式Qt发布。

2000 Sep 06 Qt 2.2发布。

2000 Oct 05 Qt 2.2. 1发布。

2000 Oct 30 Qt/Embedded开始使用GPL宣言。

2000 Sep 04 Qt free edition开始使用GPL。

自从1996年早些时候 Qt进入商业领域它已经成为全世界范围内数千种成功的应用程序的基础。Qt也是流行的Linux桌面环境KDE的基础 KDE是所有主要的Linux发行版的一个标准组件。

2.2.2 发展前景

QT是一个跨平台的界面开发软件 因此Qt同X Window上的Motif OpenwinGTK等图形界面库和Windows平台上的MFC OWL VCL ATL是同类型的东西但是Qt具有下列优点

优良的跨平台特性

webhosting24:€28/年,日本NVMe3900X+Webvps

webhosting24决定从7月1日开始对日本机房的VPS进行NVMe和流量大升级,几乎是翻倍了硬盘和流量,当然前提是价格依旧不变。目前来看,国内过去走的是NTT直连,服务器托管机房应该是CDN77*(也就是datapacket.com),加上高性能平台(AMD Ryzen 9 3900X+NVMe),这样的日本VPS还是有相当大的性价比的。官方网站:https://www.webhosting...

80VPS:香港服务器月付420元;美国CN2 GIA独服月付650元;香港/日本/韩国/美国多IP站群服务器750元/月

80vps怎么样?80vps最近新上了香港服务器、美国cn2服务器,以及香港/日本/韩国/美国多ip站群服务器。80vps之前推荐的都是VPS主机内容,其实80VPS也有独立服务器业务,分布在中国香港、欧美、韩国、日本、美国等地区,可选CN2或直连优化线路。如80VPS香港独立服务器最低月付420元,美国CN2 GIA独服月付650元起,中国香港、日本、韩国、美国洛杉矶多IP站群服务器750元/月...

NameCheap黑色星期五和网络礼拜一

如果我们较早关注NameCheap商家的朋友应该记得前几年商家黑色星期五和网络星期一的时候大促采用的闪购活动,每一个小时轮番变化一次促销活动而且限量的。那时候会导致拥挤官网打不开迟缓的问题。从去年开始,包括今年,NameCheap商家比较直接的告诉你黑色星期五和网络星期一为期6天的活动。没有给你限量的活动,只有限时六天,这个是到11月29日。如果我们有需要新注册、转入域名的可以参加,优惠力度还是比...

popo聊天为你推荐
郑州软银科技有限公司河南/郑州网站设计公司哪家做的最好呀?てっっっ腾讯空间首页腾讯空间主页哪去了天玑1000plus和骁龙865哪个好CPU型号 MediaTek MT6853 5G,和天玑1000+哪个好?电脑管家和360哪个好360和电脑管家哪个好传奇类手游哪个好传奇哪个版本比较好玩 最好玩的传奇手游排行榜华为p40和mate30哪个好华为p40手机。跟荣耀30哪个好?压缩软件哪个好安卓手机哪一款解压缩软件比较好用?谢谢!朗逸和速腾哪个好朗逸跟速腾的最大区别在哪朗逸跟速腾买那个好股票软件哪个好请问:免费的模拟炒股软件哪个好?网络机顶盒哪个好什么牌子的网络机顶盒最好
国内vps 二级域名申请 域名停靠一青草视频 rackspace 英文简历模板word 抢票工具 创梦 bgp双线 共享主机 酷番云 idc查询 电信主机 免费外链相册 dnspod 工信部网站备案查询 徐州电信 hdsky 七十九刀 googlevoice 沈阳idc 更多