freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于qt的視頻聊天工具的設(shè)計(jì)與實(shí)現(xiàn)何毅(編輯修改稿)

2025-06-12 20:29 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 eyEvent *event) 鍵盤(pán)某個(gè)鍵被按下時(shí)實(shí)現(xiàn)相應(yīng)的功能 當(dāng)鍵盤(pán)上有鍵被按下時(shí),調(diào)用此方法 控件的設(shè)計(jì) 控件是 Qt Creator 中已經(jīng)封裝好的方法和數(shù)據(jù)。通過(guò)控件,用戶(hù)可以與之交互或者操作數(shù)據(jù)。 淮南師范學(xué)院 2021 屆本科畢業(yè)論文 15 表 2 成員變量 控件說(shuō)明 控件類(lèi)型 控件名 文本 加載 背景圖片 QImage loginImage 無(wú) 頭像 HeadSculpture * Head 無(wú) IP 地址輸入的標(biāo)簽 QLabel * ipLabel IP 地址 端口號(hào)輸入的標(biāo)簽 QLabel * portLabel 端口號(hào) 用戶(hù)名輸入的標(biāo)簽 QLabel * nameLabel 用戶(hù)名 IP 地址輸入的行編輯框 QLineEdit * ipLineEdit 端口號(hào)輸入的行編輯框 QlineEdit * portLineEdit 10001 用戶(hù)名輸入的行編輯框 QlineEdit * nameLineEdit 無(wú) 登錄按鈕 QPushButton * LoginBtn 登錄 退出按鈕 QToolButton * ExitBtn 無(wú) 鼠標(biāo)的全局坐標(biāo) QPoint loginWindowsPos 無(wú) 連接服務(wù)器的線(xiàn)程 Thread * thread 無(wú) 信號(hào)與槽函數(shù)的設(shè)計(jì) 信號(hào)與槽 的 機(jī)制是 QT 的核心機(jī)制,它是一種用于對(duì)象之間的通信的高級(jí)接口,要想精通 QT 編程就必須對(duì)信號(hào)與槽有所了解。 表 3 信號(hào) 信號(hào)名稱(chēng) 信號(hào)功能說(shuō)明 sendIp(QString) 發(fā)送 IP 地址給客戶(hù)端線(xiàn)程 sendPort( QString) 發(fā)送端口號(hào)給客戶(hù)端線(xiàn)程 sendName(QString) 發(fā)送用戶(hù)名名給客戶(hù)端線(xiàn)程 基于 QT 的視頻聊天工具的設(shè)計(jì)與實(shí)現(xiàn) 16 表 4 槽函數(shù) 槽函數(shù) 槽函數(shù)功能說(shuō)明 connectToServer() 連接到服務(wù)器的功能函數(shù) showMainInterface() 當(dāng)接收到確認(rèn)可以顯示主界面時(shí),顯示主界面 userNameSame() 當(dāng)服務(wù)器返回有相同用戶(hù)名時(shí),段開(kāi)與服務(wù)器連接的線(xiàn)程 checkUserName() 檢查當(dāng)前用戶(hù)名是否合法 軟件設(shè)計(jì) 服務(wù)器模塊設(shè)計(jì) (1)鏈表設(shè)計(jì) (2)用戶(hù)登錄處理 (3)用戶(hù)登出處理 (4)用戶(hù)聊天信息處理 (5)用戶(hù)視頻請(qǐng)求處理 (5)用戶(hù)音頻請(qǐng)求處理 客戶(hù)端模塊設(shè)計(jì) 根據(jù)需求,客戶(hù)端模模塊主要分為以下幾個(gè)模塊:錄登模塊,主面界模塊,文字聊天模塊,視頻聊天模塊和語(yǔ)音聊天模塊。 登錄模塊 ( 1)登錄界面設(shè)計(jì) ( 2)用戶(hù)名是否合法的設(shè)計(jì)。 主界面模塊 ( 1)主界面設(shè)計(jì) ( 2)在線(xiàn)用戶(hù)顯示設(shè)計(jì) ( 3)窗口拖動(dòng)及縮放算法的設(shè)計(jì) 文字聊天界面模塊 ( 1)聊天界面設(shè)計(jì) 淮南師范學(xué)院 2021 屆本科畢業(yè)論文 17 ( 2)消息處 理設(shè)計(jì)。 視頻聊天模塊 ( 1)視頻聊天顯示界面設(shè)計(jì) ( 2)請(qǐng)求方式設(shè)計(jì)。 語(yǔ)音聊天模塊設(shè)計(jì) (1)語(yǔ)音聊天界面設(shè)計(jì) (2)聊天計(jì)時(shí)設(shè)計(jì)。 窗口縮放算法設(shè)計(jì) 窗口縮放的實(shí)現(xiàn)其實(shí)是比較復(fù)雜的,我用的是 QT 中的 mouseMoveEvent,mousePressEvent, mouseReleaseEvent 等事件來(lái)處理。這里首先來(lái)了解一下我的九宮格的概念: 圖 7 窗體九宮格圖 在此,我將窗體分為上、下、左、右、左上、左下、右上、右下和中間部分,程序在設(shè)計(jì)時(shí),除了中間的部分都要進(jìn)行 處理。 我在程序中定義 PADDING 為 2,表示窗口邊緣的差值為 2 個(gè) px。另外還定義一個(gè)枚舉類(lèi)型 Direction,用來(lái)標(biāo)志當(dāng)前鼠標(biāo)在窗體的哪個(gè)部分。在 mousePressEvent基于 QT 的視頻聊天工具的設(shè)計(jì)與實(shí)現(xiàn) 18 中,鼠標(biāo)左鍵按下時(shí),設(shè)置 isLeftPressDown 為真;在 mouseReleaseEvent 中,鼠標(biāo)左鍵釋時(shí),設(shè)置 isLeftPressDown 為假。在 mouseMoveEvent 中 isLeftPressDown為真且 eventx()在窗口邊緣及處理計(jì)算出鼠標(biāo)移動(dòng)的增量,然后不斷的 resize 窗口。這樣窗口縮放就可以實(shí)現(xiàn)了 。 5 測(cè)試分析 程序運(yùn)行結(jié)果分析 ( 1)項(xiàng)目層次結(jié)構(gòu)圖 圖 8 項(xiàng)目層次結(jié)構(gòu)圖 ( 2)當(dāng)用戶(hù)運(yùn)行程序時(shí),首先要輸入用戶(hù)名來(lái)登錄。在用戶(hù)名欄,用戶(hù)名不能為空,否則會(huì)提示 “請(qǐng)輸入用戶(hù)名 ”;輸入字符不能超過(guò) 15 個(gè)字符,否則會(huì)提示 “用戶(hù)名過(guò)長(zhǎng),請(qǐng)重新輸入用戶(hù)名 ”;若輸入的用戶(hù)名與已經(jīng)登錄服務(wù)器的用戶(hù)相同,則提示 “此用戶(hù)名已被注冊(cè) ”;若以上情況均示發(fā)生,則可以正常登錄,如圖 9 所示。 淮南師范學(xué)院 2021 屆本科畢業(yè)論文 19 圖 10 登錄界面 ( 3)用戶(hù) 正常登錄后,若當(dāng)前登錄用戶(hù)是第一個(gè)用戶(hù),則不會(huì)顯示在線(xiàn)用戶(hù),如果 不是第一個(gè)用戶(hù),則 會(huì)顯示所有在線(xiàn)用戶(hù),如圖 11 所示,目前登錄有三個(gè)用戶(hù)登錄,每一個(gè)客戶(hù)端只顯示其他兩個(gè)用戶(hù); 圖 11 之后登錄各個(gè)主界面 基于 QT 的視頻聊天工具的設(shè)計(jì)與實(shí)現(xiàn) 20 (4)當(dāng)一個(gè)用戶(hù)雙擊另一個(gè)用戶(hù)的用戶(hù)名時(shí),彈出聊天界面。當(dāng)用戶(hù)輸入聊天信息并發(fā)送給對(duì)方的同時(shí),發(fā)出的聊天信息會(huì)顯示在聊天框內(nèi),我以紅色和藍(lán)色來(lái)區(qū)分是接收的信息,還是發(fā)送的信息(紅色是發(fā)出的信息,藍(lán)色接收到的信息),如圖 12 所示。 圖 12 文字聊天 ( 5)當(dāng)用戶(hù)點(diǎn)擊左上方的視頻聊天按鈕時(shí) ,可以請(qǐng)求與對(duì)方開(kāi)啟視頻聊天,當(dāng)用戶(hù)點(diǎn)擊請(qǐng)求時(shí),會(huì)發(fā)送一條請(qǐng)求 等待對(duì)方同意 , 如圖 13 所。 淮南師范學(xué)院 2021 屆本科畢業(yè)論文 21 圖 13 視頻 請(qǐng)求 如果 對(duì)方同意,則可以開(kāi)啟視頻;若對(duì)方不同意,則關(guān)閉當(dāng)前窗口。 當(dāng)對(duì)方同意后就可以開(kāi)始看到對(duì)方的畫(huà)面了,其效果如圖 14 所示。 基于 QT 的視頻聊天工具的設(shè)計(jì)與實(shí)現(xiàn) 22 圖 14 視頻聊天界面實(shí)際效果圖 測(cè)試分析 在程序測(cè)試過(guò)程中,實(shí)際沒(méi)有達(dá)到預(yù)期的效果,因?yàn)橹虚g偶爾會(huì)出現(xiàn)一些預(yù)期之外結(jié)果,例如,有時(shí)收到用戶(hù)信息時(shí),在信息顯示區(qū)域不顯示用戶(hù)名。由于這是點(diǎn)對(duì)點(diǎn)之間的交流,并且聊天框上面顯示了與誰(shuí)進(jìn)行通話(huà),所以沒(méi)有影響到軟件的使用。 6 總結(jié) 與展望 視頻聊天工具的文字聊天,視頻 等基本功能都已經(jīng)實(shí)現(xiàn) ,但是由于對(duì)音頻開(kāi)發(fā)的知識(shí) 掌握不足,最終還未能實(shí)現(xiàn)預(yù)想的語(yǔ)音聊天的功能,希望自己在以后的學(xué)習(xí)和工作的過(guò)程中不斷收集和掌握此類(lèi)的相關(guān)知識(shí),并完善該功能 。 在實(shí)際的設(shè)計(jì)過(guò)程中,各對(duì)象之間頻繁的數(shù)據(jù)傳遞 遠(yuǎn) 比想像中復(fù)雜的多,一不小心就會(huì)弄糊涂。所以,一定要保持頭腦清醒,思路清晰才能下手。這與我之前的設(shè)計(jì)相比,代碼量比較大的,但是由于沒(méi)有數(shù)據(jù)庫(kù),目前能實(shí)現(xiàn)的功能也不多,以后可以進(jìn)一步改進(jìn)。 通過(guò)這次 設(shè)計(jì) ,我做了一個(gè)完整的軟件。在軟件設(shè)計(jì)過(guò)程中,讓我掌握了如做制作 一個(gè)軟件以及軟件開(kāi)發(fā)的流程,步驟,將專(zhuān)業(yè)知識(shí)以及其他方面的應(yīng)用到淮南師范學(xué)院 2021 屆本科畢業(yè)論文 23 實(shí)際。通過(guò)本次設(shè)計(jì), 讓我進(jìn)一步掌握 C++, Qt 的基礎(chǔ)知識(shí),同時(shí)培養(yǎng)了我分析并解決問(wèn)題的能力,提高了我設(shè)計(jì)分析,設(shè)計(jì)方法以及程序調(diào)試的能力并且還拓展了我的知識(shí)面。在本次設(shè)計(jì)過(guò)程中,我遇到了很多很多問(wèn)題,與此同時(shí)我也認(rèn)識(shí)到自己的不足,對(duì)之前學(xué)過(guò)的知識(shí)掌握的不夠扎實(shí),以后工作的時(shí)候必然還會(huì)遇到比現(xiàn)在還要困難的問(wèn)題,所以還要不斷鞏固自己的所學(xué)的知識(shí)。 參考文獻(xiàn): [1] 霍亞飛 .QT Creator 快速入門(mén) [M].北京 :北京航空航天大學(xué)出版社 .2021,5. [2] 龍令曼 .即時(shí)通信軟件中音視頻數(shù)據(jù)在互聯(lián)網(wǎng)上傳輸?shù)姆治雠c研究 [D].貴州:貴州大學(xué) .2021, 5. [3] Daniel 小時(shí)學(xué)通 Qt 編程 [M].北京 :人民郵電出版社 .2021,10. [4] video for Linux resources[R/OL].[20210626]. [5] LinuxTV project V4L[R/OL].[20210828]. [6] SCHIMCK M H, DIRKS Bill. Video for Linux two API specification: draft [S/OL].[20211201]. [7] 陳莉君,康華,張波 .Linux 內(nèi)核設(shè)計(jì)與實(shí)現(xiàn) [M].2 版 .北京:機(jī)械工業(yè)出版社,2021. [8] 陳亮,裴 海龍, 伍越 .基于 . Video4Linux2 的圖采集程序設(shè)計(jì) [J].微計(jì)算機(jī)信息 .2021. [9] RUBIN A. Linux 設(shè)備驅(qū)動(dòng)程序 (第二版 )[M].北京:中國(guó)電力出版社 [10] 劉升,趙晶晶,范秀麗 . 基于 V4L2 的嵌入式視頻監(jiān)控系統(tǒng) . 微計(jì)算機(jī)應(yīng)用 . 2021. [11] 余棉水,解曉萌 . 嵌入式系統(tǒng) ALSA 聲卡驅(qū)動(dòng)設(shè)計(jì)與實(shí)現(xiàn) [J]. 計(jì)算機(jī)光盤(pán)軟件設(shè)計(jì)與應(yīng)用 . 2021. [12] 張明俊,魏瑾 . 嵌入式 ALSA 音頻框架介紹與應(yīng)用 [J]. 電腦開(kāi)發(fā)與應(yīng)用 .2021,26(9) [13] W. Richard Stevens. TCP/IP Illustrated, Volume 3, TCP for Transactions, HTTP, NNTP, and the UNIX Domain Protocols[M].人民郵電出版社 . . [14] 趙章界,余智華,張丙奇 . HTTP 協(xié)議流解析系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) [J].計(jì)算機(jī)工程 . 基于 QT 的視頻聊天工具的設(shè)計(jì)與實(shí)現(xiàn) 24 2021. [15] 斯特朗斯特魯( Stroustrup .B.) . C++程序設(shè)計(jì)語(yǔ)言特別版 [M].北京:機(jī)械工業(yè)出版社, 2021, 7. [16] Jasmin Blanchette,Mark ++ GUI Qt 4 編程(第二版) [M].電子工業(yè)出版社 .2021. [17] 譚浩強(qiáng) .C++面向?qū)ο蟪绦蛟O(shè)計(jì) [M].清華大學(xué)出版社 .2021. 致謝 轉(zhuǎn)眼間 ,四年的大學(xué)時(shí)光就快結(jié)束了。精心準(zhǔn)備了兩個(gè)多月的畢業(yè)設(shè)計(jì)終于可以劃上句號(hào)了。在作品的創(chuàng)作的過(guò)程中遇到的各種問(wèn)題,讓人力不從心,現(xiàn)如今如釋重負(fù)。畢業(yè)設(shè)計(jì)創(chuàng)作的過(guò)程一點(diǎn)也不輕松,各種各樣的問(wèn)題讓我感覺(jué)自身知識(shí)積累還不夠。第一次花費(fèi)了這么久和這么多精力,獨(dú)立完成一套作品,其中的滋味讓人難以忘懷。 在這里,我要感謝我的指導(dǎo)老師李營(yíng)老師。在她的悉心指導(dǎo),我順利的完成了此次畢業(yè)設(shè)計(jì)的。在她的指導(dǎo)下,我完成了論文的修改直到完成,給予了我很多的幫助。 基于 QT 的視頻聊天工具的設(shè)計(jì)與實(shí)現(xiàn) 2 附件: 大學(xué)本科生畢業(yè)論文 (設(shè)計(jì) )規(guī)范 一、畢業(yè)論文(設(shè)計(jì))格式規(guī)范 一份完整的畢業(yè)論文(設(shè)計(jì)) 材料 一般應(yīng)包括下列內(nèi)容: (一) 題目; (二)目錄 ; (三) 論文主體(包括 中 英 文摘要及關(guān)鍵詞 ; 正文 ; 致謝 ; 參考文獻(xiàn) 等); (四) 附錄 。 具體 分述如下: (一) 題目 題目應(yīng)力求簡(jiǎn)短、精確、有概括性,直接反映畢業(yè)論文(設(shè)計(jì))的中心內(nèi)容和學(xué)科特點(diǎn)。題目 一般不超過(guò) 20 個(gè)漢字,如確有必要,可用副標(biāo)題作補(bǔ)充。 (二)目錄 畢業(yè)論文(設(shè)計(jì))必須按其結(jié)構(gòu)順序編寫(xiě)目錄,要求層次分明,體現(xiàn)文章展開(kāi)的步驟和作者思路。目錄格式是論文的結(jié)構(gòu)層次,反映作 者的邏輯思維能力,所用格式應(yīng)全文統(tǒng)一,每一層次下的正文必須另起一行。目錄獨(dú)立成頁(yè),以章、節(jié)、 小節(jié) 來(lái)編排 。 (三 ) 論文主體 中 英 文摘要及關(guān)鍵詞 摘要一般不分段,不用圖表,以精煉的文字對(duì)畢業(yè)論文(設(shè)計(jì))的內(nèi)容、觀點(diǎn)、方法、成果和結(jié)論進(jìn)行高度概括,具有獨(dú)立性和自含性,自成一篇短文,具有報(bào)導(dǎo)作用。中文摘要 一般以200300 個(gè)字為宜。 關(guān)鍵詞是反映畢業(yè)論文(設(shè)計(jì))內(nèi)容主題的詞或詞組,一般 3~ 5 個(gè)。 其中英文摘要與中文摘要 基本 對(duì)應(yīng),英文關(guān)鍵詞之間用 分 號(hào)分開(kāi) ,最后一個(gè)關(guān)鍵詞后不加任何標(biāo)點(diǎn) 。 正文 包括 引言、正文、 結(jié)論等部分 。 ( 1)引言 引言也稱(chēng)前言、導(dǎo)論、導(dǎo)言、緒言、緒論等。 它的作用是向讀者初步介紹文章的背景和內(nèi)容,通常包括以下幾個(gè)方面:為什么寫(xiě)這篇文章,要解決什么問(wèn)題;論文的主要觀點(diǎn);與課題相關(guān)的歷史回顧;寫(xiě)作資料的來(lái)源、性質(zhì)及其運(yùn)用情況,論文的規(guī)劃和簡(jiǎn)要內(nèi)容;研究中的新發(fā)現(xiàn);課題的意義等。 ( 2)正文 正文 是 論文 的 核心部分,是作者學(xué)術(shù)理論水平和創(chuàng)造性工作的綜合體現(xiàn),是作者運(yùn)用掌握的材料與方法進(jìn)行論證、得出結(jié)論的部分,其任務(wù)是分析問(wèn)題和解決問(wèn)題。根據(jù)不同論文研究的課題性質(zhì)、研究方法的不同,理論型、實(shí)驗(yàn)型和描述型 論文的正文格式和寫(xiě)法不盡相同,但他們的要求是一致的。即: 主題明確:全文圍繞主題展開(kāi)討論,不離題; 論證充分:
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1