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

正文內容

基于qt的局域網聊天軟件設計與實現(xiàn)論文(編輯修改稿)

2024-12-23 21:48 本頁面
 

【文章內容簡介】 業(yè)版權,從此, Qt mobile 由諾基亞負責,而 Qt Commercial 由 Digia 負責, 2020 年, Qt 正式被諾基亞公司作為資產剝離方式出售給 Digia 公司, Qt 開始了真正的跨平臺發(fā)展。 由于 Qt 具有的強大的跨平臺優(yōu)勢,可以操作運行與絕大多數目前流行使用的平臺,并且具有模塊化度高,可重用性好的面向對象 開發(fā)方式,可以使用signals/slots 的安全類型來替代 callback,使得各個模塊之間的協(xié)同工作變得非常簡單,以及大量的 API 支持, Qt當之無愧作為本次開發(fā)的主要工具。 局域網聊天原理 此次局域網聊天軟件的設計主要采用 TCP/IP 協(xié)議完成, TCP/IP 協(xié)議作為inter 的核心協(xié)議,已經被廣泛應用與日常的網絡使用,在局域網和廣域網中都屢見不鮮,目前已經成為事實上的國際標準 。 TCP/IP 協(xié)議在網絡參考模型中主要作用于網絡層、傳輸層和應用層,支持 TCP/IP 協(xié)議的應用程序通常直接運行與傳輸層協(xié)議,而不需要表示層和會話層的支持。該協(xié)議可以在一臺計算機需要連接另一臺計算機時,幫助其建立一個連接,并控制起發(fā)送接受數據,以及決定性的終止連接, TCP/IP 協(xié)議基本囊括了網絡通訊的主要功能,同時具有相當的靈活性和自由性,使得計算機之間可以彼此通信、聯(lián)通。 同時本次開發(fā)需要用到 UPD 協(xié)議,也就是用戶數據包協(xié)議,這是一種異步通信模式,需要采取請求接受的方式來進行通訊,但這樣的好處是不需要接受網絡 吞吐量的限制,同時可以完整的接受發(fā)送數據,這樣的好處是不需要維護連接狀態(tài),因此一臺機器可以向多個機器發(fā)送相同的消息,雖然 UPD 協(xié)議不是一個可靠協(xié)議,但其分發(fā)信息的功能在本次設計中起到了至關重要的作用。 本次局域網聊天軟件的設計思路如下: 假定 A為發(fā)送方, B為接收方 ,首先發(fā)送方流程如下: 。 建立一個廣播 Scoket A用戶登錄 8 太原科技大學華科學院畢業(yè)設計(論文) Y Y 然后,接收方流程如下: 用 A的用戶名、主機名和 IP 地址建立一個 Socket 接收 A的用戶名、主機名、 IP 地址 是否接到消息 B用戶登錄 顯示聊天內容 發(fā)送聊天內容 是否需要發(fā)送消息 用聊天 Socket發(fā)送消息 連接接收信號和槽函數hasPendingDatagrams() 將 Socket綁定到本地 IP 和聊天端口 N N 9 太原科技大學華科學院畢業(yè)設計(論文) Y 回復信息 是否發(fā)送消息 顯示 A發(fā)送的消息 N 10 太原科技大學華科學院畢業(yè)設計(論文) 第 4 章 系統(tǒng)分析 系統(tǒng)實現(xiàn)目標 本軟件 主要實現(xiàn): 實現(xiàn)局域網中用戶的日常聊天,文字傳輸,上線提示,可以更改字體、字號,保存聊天記錄,刪除聊天記錄,傳輸小型文件,實現(xiàn)窗口拖動等功能,具備基本的局域網聊天軟件功能,使用 QT開發(fā),使其可以跨平臺使用,為將來的軟件移植打下堅實的基礎。 系統(tǒng)體系結構 圖 系統(tǒng)結構圖 聊天記錄保存: 可以保存當前的聊天記錄到 TXT文檔。 更改字體、字號: 可以根據用戶的喜好自行更改字體、字號、顏色等聊天文字。 登錄 : 使用用戶喜歡的用戶名進行登錄。 上線提示 文件傳輸 文字傳輸 窗口拖動 登錄 關閉服務器 配置服務器 開啟服務器 客戶端 服務器 局域網聊天系統(tǒng) 11 太原科技大學華科學院畢業(yè)設計(論文) 文字傳輸: 實現(xiàn)聊天的基本功能。 上線提示: 用戶上線發(fā)出上線提示。 文件傳輸: 可以傳輸小型文件。 窗口拖動: 點擊聊天軟件窗口可以自由拖動。 12 太原科技大學華科學院畢業(yè)設計(論文) 第 5 章 系統(tǒng)設計 該 軟件 要求功能 齊全 ,界面 美觀簡介,符合當代人的基本審美要求 , 進行合格 的軟件 開發(fā) ,功能模塊 開發(fā) 是 重中之重 。 概要設計 首先,要明確在系統(tǒng)需求分析中,首先要明確的是客戶需求,作為局域網聊天軟件,客戶的需求首先是流暢的聊天,其次,美觀性在當今的軟件設計當中起到了決定性的作用, UI 的設計就顯得尤為重要,再者,軟件的功能性全面和完善是一個完整的軟件必不可少的。那么概要設計就明確了: ; UI界面; 。 軟件結構設計 模塊化在軟件結構設計中起著尤為重要的作用,能否將一個應用合理的模塊化是一個項目能否成功的關鍵 。 模塊化是說,將一個復雜的軟件分解成為若干個小模塊,逐級劃分,層層嵌套,使整個軟件具有明顯的層級和規(guī)則,每個模塊完成一個特定的功能,將各個模塊組織起來之后,就可以形成一個完整的軟件。 將軟件模塊化的原因是為了讓軟件的各個功能更加明確,易于將來的修改和維護,同時也增加了軟件的可讀性,使得更多人可以為這個軟件增加新的功能和優(yōu)化。但值得一提的是,軟件的模塊化并不是任意的,而是具有相應的層級和相應的規(guī)則的,層層嵌套,一環(huán)扣一 環(huán),使得各個模塊間的借口盡量的聯(lián)系少且簡單,從而省去很多不必要的麻煩,盡量做到高內聚低耦合,增強各個模塊的單獨使用性,為日后提高軟件質量做準備。 在本次軟件的設計中,軟件被細化成了如下幾個部分: 一. 登錄界面 1. 用戶名輸入框 13 太原科技大學華科學院畢業(yè)設計(論文) 2. UI 界面 3. 窗體拖動 二. 聊天室界面 1. 文字輸入框 2. 工具欄 1) 字體調整 2) 字號調整 3) 顏色調整 4) 聊天記錄保存 5) 聊天記錄清空 6) 文件傳輸 3. 消息顯示框 4. 用戶列表框 5. UI 界面 6. 窗體拖動 三. TCP 客戶端 1. 端口、 IP 地址配置 2. 文件接收 3. 窗體拖動 四. TCP 服務器 1. 端口、 IP 地址配置 2. 文件發(fā)送 3. 窗體拖動 詳細設計 登錄界面 用戶登錄界面 ,如圖。 14 太原科技大學華科學院畢業(yè)設計(論文) 圖 用戶登錄 圖 主要 UI設計代碼如下: ?xml version= encoding=UTF8? ui version= classDialog/class widget class=QDialog name=Dialog property name=geometry rect x0/x y0/y width400/width height184/height /rect /property property name=windowTitle stringDialog/string /property widget class=QPushButton name=enterBtn property name=geometry rect x300/x y110/y width61/width 15 太原科技大學華科學院畢業(yè)設計(論文) height61/height /rect /property property name=cursor cursorShapePointingHandCursor/cursorShape /property property name=styleSheet string notr=trueQPushButton{ borderimage: url(:/imgs/)。} QPushButton::hover{ borderimage: url(:/imgs/)。} QPushButton::pressed{ borderimage: url(:/imgs/)。}/string /property property name=text string/ /property property name=flat booltrue/bool /property /widget widget class=QPushButton name=exitBtn property name=geometry rect x364/x y0/y width30/width height30/height /rect /property 16 太原科技大學華科學院畢業(yè)設計(論文) property name=styleSheet string notr=trueQPushButton{ borderimage: url(:/imgs/)。} QPushButton::hover{ borderimage: url(:/imgs/)。} QPushButton::pressed{ borderimage: url(:/imgs/)。}/string /property property name=text string/ /property property name=flat booltrue/bool /property /widget widget class=QLineEdit name=usrEdit property name=geometry rect x50/x y135/y width211/width height31/height /rect /property property name=font font familyAdobe Gothic Std B/family pointsize11/pointsize weight75/weight boldtrue/bold 17 太原科技大學華科學院畢業(yè)設計(論文) /font /property /widget widget class=QWidget name=widget native=true property name=geometry rect x0/x y0/y width400/width height184/height /rect /property property name=styleSheet string notr=truewidget{backgroundimage: url(:/imgs/)。} /string /property /widget zorderwidget/zorder zorderenterBtn/zorder zorderexitBtn/zorder zorderusrEdit/zorder /widget resources/ connections connection senderexitBtn/sender signalpressed()/signal receiverDialog/receiver slotclose()/slot 18 太原科技大學華科學院畢業(yè)設計(論文) hints hint type=sourcelabel x378/x y14/y /hint hint type=destinat
點擊復制文檔內容
高考資料相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1