书签基于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具有下列优点

优良的跨平台特性

腾讯云2核4GB内存8M带宽 年74元

一般大厂都是通过首年才有可以享受爆款活动,然后吸引我们注册他们商家达到持续续费和购买的目的。一般只有大厂才能有这样的魄力和能力首年亏本,但是对于一般的公司和个人厂家确实难过,这几年确实看到不少的同类商家难以生存。这里我们可以看到有对应的套餐方案。不过这两个套餐都是100%CPU独享的,不是有某云商家限制CPU的。但是轻量服务器有个不好的就是带宽是较大且流量是限制的额,分别是1GB和1.2TB月流量...

轻云互联22元/月,美国硅谷、圣何塞CN2GIA云服务器,香港沙田cn2建站vps仅25元/月

轻云互联怎么样?轻云互联,广州轻云网络科技有限公司旗下品牌,2018年5月成立以来,轻云互联以性价比的价格一直为提供个人,中大小型企业/团队云上解决方案。本次轻云互联送上的是美国圣何塞cn2 vps(免费50G集群防御)及香港沙田cn2 vps(免费10G集群防御)促销活动,促销产品均为cn2直连中国大陆线路、采用kvm虚拟技术架构及静态内存。目前,轻云互联推出美国硅谷、圣何塞CN2GIA云服务器...

这几个Vultr VPS主机商家的优点造就商家的用户驱动力

目前云服务器市场竞争是相当的大的,比如我们在年中活动中看到各大服务商都找准这个噱头的活动发布各种活动,有的甚至就是平时的活动价格,只是换一个说法而已。可见这个行业确实竞争很大,当然我们也可以看到很多主机商几个月就消失,也有看到很多个人商家捣鼓几个品牌然后忽悠一圈跑路的。当然,个人建议在选择服务商的时候尽量选择老牌商家,这样性能更为稳定一些。近期可能会准备重新整理Vultr商家的一些信息和教程。以前...

popo聊天为你推荐
锦天城和君合哪个好合肥和君纵达好吗?电脑管家和360哪个好360和电脑管家哪个好啊法兰绒和珊瑚绒哪个好法兰绒、珊瑚绒、天鹅绒哪个暖和?小说软件哪个好用免费有什么好用的免费小说软件朗逸和速腾哪个好朗逸和新速腾哪个性能更好点?录音软件哪个好录音软件哪个好绝地求生加速器哪个好绝地求生哪个加速器好用一点,求推荐一个苹果手机助手哪个好最新版iphone助手 PP助手好用吗?核芯显卡与独立显卡哪个好独立显卡和核心显卡哪个好dnf魔枪士转职哪个好魔枪转职哪个适合搬砖
沈阳虚拟主机 3322免费域名 a5域名交易 贝锐花生壳域名 lnmp 海外服务器 香港cdn 新站长网 789电视网 服务器干什么用的 cdn加速是什么 阿里云手机官网 测速电信 免费稳定空间 国内空间 标准机柜 服务器是什么意思 ping值 alertpay 德国代理ip 更多