qt畫圖實(shí)驗(yàn)報(bào)告_第1頁
qt畫圖實(shí)驗(yàn)報(bào)告_第2頁
qt畫圖實(shí)驗(yàn)報(bào)告_第3頁
qt畫圖實(shí)驗(yàn)報(bào)告_第4頁
qt畫圖實(shí)驗(yàn)報(bào)告_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余19頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、qt畫圖實(shí)驗(yàn)報(bào)告篇一:QT時(shí)鐘實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)報(bào)告書實(shí)驗(yàn)名稱:qmainwindow程序設(shè)計(jì)專業(yè)班級: 6學(xué)號:姓名:陳俊宇潘耀斌聯(lián)系電話:指導(dǎo)老師:譚智實(shí)驗(yàn)時(shí)間:一計(jì)算機(jī)科學(xué)與工程學(xué)院計(jì)算機(jī)實(shí)驗(yàn)室(中 心)1設(shè)計(jì)分析qmainwindow程序設(shè)計(jì)對qmainwindow類窗口進(jìn)行分析, qmainwindow類是一個(gè)經(jīng)常用到的類,為用戶提供了一個(gè)主窗口程序,可包含一個(gè)菜單 條,一個(gè)工具欄,一個(gè)狀態(tài)條以及一個(gè)中央窗體,是許多應(yīng)用程序的基礎(chǔ),如文本編輯器, 圖片瀏覽器都是以qmainwindow為基礎(chǔ)實(shí)現(xiàn)的。本次程序設(shè)計(jì),首先分析了一個(gè)基本的窗口程序的實(shí)現(xiàn), 只包含基本的菜單和工具欄,實(shí)現(xiàn)了基本的窗

2、口功能,如打開、新建等。2功能需求實(shí)現(xiàn)一個(gè)基本的窗口程序,包括一個(gè)菜單條,一個(gè)工具 欄,中央可編輯窗體及狀態(tài)欄。實(shí)現(xiàn)的效果如圖所示。在編寫文本編輯器等應(yīng)用中,需 要對文本進(jìn)行排序,以列表的方式顯示各段文本。即實(shí)現(xiàn)文本的排序功能,并實(shí)現(xiàn)文本的對齊及撤銷和恢復(fù)功 能,如圖所示。在編輯框中任意輸入幾段文字,單擊工具欄 上的下拉列表框,選擇排序方式,則光標(biāo)所在的文本段以所選排序方式自動縮進(jìn)排序顯示,并且緊 接著的文本段以同樣的方式排列;工具欄中部的4個(gè)快捷按鈕實(shí)現(xiàn)文本的對齊功能,分別為 左對齊,右對齊、居中和兩端對齊;工具欄右部的快捷按鈕實(shí)現(xiàn)文本操作的前進(jìn)/回退功能。3程序源代碼#include#in

3、clude#include#include#include#include#include#includemainwindow:mainwindow(qwid get*parent):qmainwindow(parent),ui(newui:mainwindow)ui->setupui (this);issaved=fal se;curfile=tr(noname);ui->action left->setcheckable (true);ui->action righ t->setcheckable(true);ui->action justift->

4、;setchecka ble(true);ui->action center->setcheckable(true);/*w orkspace=newqworkspace;setcentralwidget(workspace); createmenuO ;qmainwindow*windowl=newqmainwindow;qma i nw i nd ow*w i n d ow2=newqmainwindow;qmainwindow*window3=newqmainwind ow;w i ndow1-> s e tw i ndowt i 11e(tr(windowi);win

5、dow2->se twindowtitle (tr(windowii);wi ndow3-> s e tw i ndowt i 11e( tr(windowiii);qtextedit*editl=newqtextedit;qtexted it*edit2=newqtextedit;qtextedit*edit3=newqtextedit; editl->settext(tr(windowl);edit2->settext(tr(windo w2);edit3->settext(tr(window3);windowl->setcentra Iwidget(e

6、ditl);window2->setcentralwidget(edit2);win dow3->setcentralwidget(edit3);workspace->addwindow( windowl);workspace->addwindow(window2);workspace->a ddwindow(window3);*/rootlocalhostopt#三、實(shí)驗(yàn)總結(jié)篇三:用qt實(shí)現(xiàn)桌面時(shí)鐘設(shè)計(jì).doc附件【學(xué)生用】西北農(nóng)林科技大學(xué)信息工程學(xué)院面向?qū)ο髮?shí) 習(xí)實(shí)習(xí)報(bào)告題學(xué)號姓名專業(yè)班級指導(dǎo)教師實(shí)踐日期目:桌面時(shí)鐘設(shè) 計(jì)與實(shí)現(xiàn)目錄一、綜合訓(xùn)練目的與要1二、綜

7、合訓(xùn)練任務(wù).1三、總體設(shè)計(jì)2四、詳細(xì)設(shè)計(jì)說明4五、調(diào)試與測試5六、實(shí)習(xí)日志9七、實(shí)習(xí)總結(jié)9八、附錄:核心代碼清單9一、綜合訓(xùn)練目的與要求正文這次面向?qū)ο髮?shí)習(xí)實(shí)踐活 動是在C+面向?qū)ο蟪绦蛟O(shè)計(jì)之后進(jìn)行的實(shí)踐環(huán)節(jié)旨在加深對面向?qū)ο缶幊痰脑O(shè)計(jì)思想(類的設(shè)計(jì),抽象,封裝, 包含與繼承,多態(tài)性,uml圖)的理解,掌握使用C+編程的基本的技能,從而能通過小 型的團(tuán)隊(duì)開發(fā)一些小軟件的實(shí)現(xiàn)與設(shè)計(jì),并能夠解決一定的實(shí)際問題。以及掌握撰寫規(guī)范程 序設(shè)計(jì)文檔的能力,還有訓(xùn)練語言組織與表達(dá)能力,提高綜合能力。二、綜合訓(xùn)練任務(wù)1、需求分析隨著科學(xué)技術(shù)的不斷發(fā) 展,計(jì)算機(jī)已經(jīng)成為了我們?nèi)粘9ぷ魃詈蛯W(xué)習(xí)中不可缺少 的工具

8、,很多人每天都使用計(jì)算機(jī)與外界進(jìn)行交互,為了讓 用戶對計(jì)算機(jī)有更舒心的體驗(yàn),桌面的個(gè)性化是必不可少,因此很有必要設(shè)計(jì)美觀使用的桌 面的小軟件,來讓計(jì)算機(jī)更加人性化,二當(dāng)今社會是信息時(shí)代,生活節(jié)奏也隨即加快,而一個(gè) 美觀的能提示顯示時(shí)間和日歷的小軟件能讓人們合理安排自己的行程,避免不必要的損失, 因此桌面時(shí)鐘有一定的需求性。2、任務(wù)實(shí)現(xiàn)(1)良好的人機(jī)交互界面是用戶所親睞的。(2)使用 qtcreater來開發(fā)該界面程序。(3)采用面向?qū)ο蟮乃枷雽?shí)現(xiàn)時(shí)鐘類、設(shè)置類的封裝 和與實(shí)現(xiàn)(4)實(shí)現(xiàn)軟件界面的布局(5)為了實(shí)現(xiàn)不同類之間的聯(lián)系提供類的接口。(6)實(shí)現(xiàn)對代碼的編寫和調(diào)試工作,每天記錄實(shí)習(xí)日

9、志(7)獨(dú)立完成論文并進(jìn)行答辯。三、總體設(shè)計(jì)1、整體功能設(shè)計(jì)圖3-1-1圖3-1-1是整體功能的設(shè)計(jì),為了界面的整潔性和強(qiáng)化 界面的顯示采取以上的功能模型組合。增強(qiáng)可視化和人性化,用戶可以自己更改時(shí)間和 更改日歷的顯示的樣式以及一些其他的操作。2、各部件介紹:(1)主窗口實(shí)現(xiàn)窗口布局包含了數(shù)字時(shí)鐘部件、日歷部件、時(shí)間部件、和菜單。(2)日歷設(shè)置窗口實(shí)現(xiàn)窗口布局包含了日歷樣式設(shè)置和常 規(guī)設(shè)置部件。(3)時(shí)間設(shè)置窗口實(shí)現(xiàn)窗口的布局包含了時(shí)間edit和 刻度時(shí)鐘動態(tài)實(shí)現(xiàn)更改時(shí)間設(shè)置。3、整體uml圖:圖3-3-1圖3-3-1是程序整體的uml 圖由于屬性太多因此省略掉了屬性和操作。以程序中每個(gè)類之間

10、的聯(lián)系進(jìn)行組合,反映出程序中結(jié)構(gòu)和整體的框架。 便于后期編程。篇四:qt實(shí)驗(yàn)報(bào)告面向?qū)ο蟪绦蛟O(shè)計(jì)2實(shí)驗(yàn) 報(bào)告專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)年級:20XX級班級:工科1班 學(xué)號:0姓名:黃劍波目錄實(shí)驗(yàn)一:線程通信:門鈴1、實(shí)驗(yàn)?zāi)康钠篞T版連連看制作的實(shí)驗(yàn)報(bào)告一.游戲概述游戲簡介游戲“連連看”顧名思義就是找出相關(guān)聯(lián)的東西,這個(gè) 連連看在網(wǎng)上基本是用在小游戲中,就是找出相同的兩樣?xùn)| 西,在一定的規(guī)則之內(nèi)可以做為相關(guān)聯(lián)處理。“連連看”的 發(fā)展經(jīng)歷了從桌面游戲、在線游戲、社交游戲三個(gè)過程。游戲“連連看”是源自臺灣的桌面小游戲,自從流入大 陸以來風(fēng)靡一時(shí),也吸引眾多程序員開發(fā)出多種版本的“連 連看“。這其中,

11、顧方編寫的“阿達(dá)連連看”以其精良的制 作廣受好評,這也成為顧方“阿達(dá)系列軟件”的核心產(chǎn)品。 并于20XX年,取得了國家版權(quán)局的計(jì)算機(jī)軟件著作權(quán)登記 證書。隨著Flash應(yīng)用的流行,網(wǎng)上出現(xiàn)了多種在線Flash 版本“連連看”。如“水晶連連看",“果蔬連連看”等,流 行的“水晶連連看“以華麗界面吸引了一大批的女性玩家。20XX年,隨著社交網(wǎng)絡(luò)的普及和開放平臺的興起,“連 連看”被引入了社交網(wǎng)絡(luò)。“連連看”與個(gè)人空間相結(jié)合,被快速的傳播,成為一款熱門的社交游戲,其中以開發(fā)者 Jonevey在manyou開放平臺上推出的“寵物連連看”最為流 行。游戲功能本次設(shè)計(jì)連連看主要是在原連連看對戰(zhàn)的

12、基礎(chǔ)上設(shè)計(jì) 挑戰(zhàn)模式,具體的功能如下所述:游戲運(yùn)行界面簡單美觀,操作簡單,運(yùn)行穩(wěn)定;能夠根據(jù)不同的等級模式播放不同的游戲背景音樂,包 括操作方向鍵、消行時(shí)的聲音,音量由玩家操作控制;設(shè)計(jì)不同的游戲難度,當(dāng)玩家達(dá)到一定的積分,可以進(jìn) 入相關(guān)難度的等級;玩家可直接操作界面上的相關(guān)按鈕來控制游戲的開始、 暫停、設(shè)置、退出等功能。第1頁共23頁二.需求分析開發(fā)的需求C/C+的哲學(xué)就不一樣了,同一份程序代碼,只要在該 平臺重新compile成該平臺的執(zhí)行檔,就能在該平臺執(zhí)行, 若文字模式下的程序,的確可以跨平臺,程序完全不需修改, 但gul盛行以后,由于各gul的Library都不一樣且沒有標(biāo) 準(zhǔn),所以

13、gul程序并沒辦法跨平臺compile,因?yàn)楦髌脚_都 有專屬的Library。但是c/c+優(yōu)勢就是執(zhí)行速度快,若能 解決guILibrary的問題,則跨平臺即可解決。除了 guILibrary需要統(tǒng)一外,還得看該Library設(shè)計(jì) 的好不好才行,Linuxgul我沒寫過就不說了,若在windows平臺, borland 的 c+builder 使用 Delphi 的 VcLLibrary, microsoft 的 Visualc+可以用 mFc 和.neTFramework,首先 來看borland的c+builder,它使用標(biāo)準(zhǔn)的Anslc+語言開 發(fā),利用VcL寫出來的程序也算蠻漂亮的,執(zhí)

14、行速度很快, 比較麻煩的是c+builder當(dāng)初為了縮短上市時(shí)間,并沒有 設(shè)計(jì)自己的Library,而是藉用Delphi的Library,導(dǎo)致 c+builder 在 compile 時(shí),是先用 Delphi 的 compiler 將 VcLcompile 成 objectfile 后,再用 c+builder 將你寫的 C+程序compile成objectfile,最后再用Linker將所有的 objectfilelink起來,由于這都是IDe在做,對程序設(shè)計(jì)師 似乎影響不大,但VcL由于是Delphi的Library,所以若想 深入研究VcL的sourcecode時(shí),則必須學(xué)Delphi的

15、pascal 才行,否則看不懂VcLsourcecode,這也是很多人對 c+builder 卻步的原因。再來看 microsoft 的 Visual C+, mFc用的是完整的Anslc+語言,所以語言部分不是問題,但若你看過用mFc寫的 程序,你一定會驚訝為什么這么復(fù)雜,程序代碼非常冗長不 好看,且mFc是有名的難學(xué),若Visual C+搭配.neTFramrwork, 則無法使用Anslc+,得用其.neT平臺版本的c+/cLI,相 信這點(diǎn)很多人就有意見了,不過.neT第2頁共23頁Framework由于設(shè)計(jì)的不錯,所以寫出來的程序相當(dāng)精 簡漂亮,感覺和c+builder差不多,不過無論

16、是c+builder 或Visualc+開發(fā)的gul,所開發(fā)出來的程序都無法跨平臺, 當(dāng)然也無法跨平臺compileo(1) QT的介紹Qt是一個(gè)多平臺的C+圖形用戶界面應(yīng)用程序框架。它提供給應(yīng)用程序開發(fā)者建立藝術(shù)級的圖形用戶界面所需的所用功能。Qt是完全面向?qū)ο蟮暮苋菀讛U(kuò)展,并且允許真正 地組件編程。自從1996年早些時(shí)候,Qt進(jìn)入商業(yè)領(lǐng)域,它已經(jīng)成為 全世界范圍內(nèi)數(shù)千種成功的應(yīng)用程序的基礎(chǔ)。Qt也是流行的 Linux桌面環(huán)境KDe的基礎(chǔ),KDe是所有主要的Linux發(fā)行 版的一個(gè)標(biāo)準(zhǔn)組件。Qt的特點(diǎn)有:可移植性、易用性、執(zhí)行 速度快等特點(diǎn)。(2) QT的優(yōu)勢xmL支持。大量的開發(fā)文檔支持2

17、D/3D圖形渲染,支持opengL優(yōu)良的跨平臺特性,Qt支持下列操作系 統(tǒng):microsoftwindows95/98, microsoftwindowsnT, Linux, Solaris, sunos, hp-ux,DigitalunIx(osF/l, Tru64), Irix, FreebsD, bsD/os,SCO,AIx, os390, Qnx 等等。面向?qū)ο螅琎t的良好封裝機(jī)制使得Qt的模塊化程度非 常高,可重用性較好,對于用戶開發(fā)來說是非常方便的。Qt提供了 一種稱為signals/slots的安全類型來替代callback,這使得各 個(gè)元件之間的協(xié)同工作變得十分簡單。豐富的Ap

18、i, Qt包括多達(dá)250個(gè)以上的C+類,還提供 基于模板的collections, serialization, file, I/odevice, directorymanagement, date/time類。甚至還包括正則表達(dá)式的 處理功能。游戲功能需求本次設(shè)計(jì)是在傳統(tǒng)的連連看上設(shè)計(jì)實(shí)現(xiàn)對戰(zhàn)的連連看, 玩家通過達(dá)到一定的積分來獲得繼續(xù)闖關(guān)的機(jī)會,還有機(jī)會 開啟神秘的應(yīng)藏關(guān),以此來增加游戲的可玩性。游戲的基本規(guī)則:程序隨機(jī)產(chǎn)生任意成對的圖片,當(dāng)定 點(diǎn)擊開始游戲時(shí),電腦根據(jù)時(shí)間參數(shù)隨機(jī)生成固定的成對圖 片,游戲再次開始,玩家可通過鼠標(biāo)上的第3頁共23頁左鍵,自由的點(diǎn)兩張圖片。如果點(diǎn)擊兩次時(shí),兩

19、張圖片 相同,且滿足程序的算法則這兩張圖片可消去。消去圖片后, 游戲可給玩家加分,若在規(guī)定的時(shí)間內(nèi),玩家沒有消掉所有 的圖片則游戲失敗。由于是闖關(guān)模式,達(dá)到一定分?jǐn)?shù)的玩家 可以繼續(xù)挑戰(zhàn)新的游戲,游戲的難度會相應(yīng)增加,并且還增 加了新玩法。具體的游戲功能如下:游戲界面需求:設(shè)計(jì)良好的游戲界面可以讓玩家充分感 受到游戲帶來的娛樂性,游戲的背景取自網(wǎng)上中的圖片,體 現(xiàn)了游戲的挑戰(zhàn)性。鼠標(biāo)處理事件需求:通過點(diǎn)擊主窗體中相應(yīng)的按鈕,可 以實(shí)現(xiàn)游戲的開始、暫停、結(jié)束,通過點(diǎn)擊選項(xiàng)設(shè)置中相應(yīng) 的按鈕,可設(shè)置聲音的大小及方向鍵I的功能。顯示需求: 當(dāng)兩次點(diǎn)擊的圖片相同且滿足算法可以消去,當(dāng)達(dá)到一定分 數(shù)的時(shí)候

20、,游戲會進(jìn)入下一關(guān),并有障礙了。游戲闖關(guān)設(shè)計(jì)需求:隨著游戲的難度不同,玩法會發(fā)生 改變,需要在游戲中設(shè)置障礙,蒙手游戲。如果玩家能到達(dá) 并完成最后一關(guān),則玩家挑戰(zhàn)成功,游戲結(jié)束。最后游戲效果如下:第4頁共23頁三.游戲總體設(shè)計(jì)總體設(shè)計(jì)整體設(shè)計(jì)思想:進(jìn)入游戲后,有三個(gè)按鈕可供玩家選擇: 開始游戲,游戲設(shè)置,退出游戲,在進(jìn)入相應(yīng)子菜單后也可 返回到主菜單,每個(gè)菜單的具體設(shè)計(jì)將在后面介紹,以下是 總體的游戲流程圖。游戲核心模塊的設(shè)計(jì)連連看所要求的是:1 .兩個(gè)目標(biāo)是相同的;2 .兩個(gè)目標(biāo)之間連接線的折點(diǎn)不超過兩個(gè)。(連接線由 x軸和y軸的平行線組成)那么分析一下連接的情況可以看到,一般分三種情況:(

21、1)直線相連;(2) 一個(gè)折點(diǎn);(3)兩個(gè)折點(diǎn)。第5頁共23頁篇三:QT綜合作業(yè)實(shí)驗(yàn)報(bào)告一、實(shí)驗(yàn)?zāi)康?, 了解并掌握Qt集成開發(fā)環(huán)境下使用QtDesigner開 發(fā)圖形界面程序的流程和相關(guān)操作;2, 了解并掌握Qt的信號槽和信號傳遞機(jī)制,并通過具 體應(yīng)用加深理解;3, 了解并掌握使Qt應(yīng)用程序支持中文或國際化的方法, 并在本次實(shí)驗(yàn)中使用;4, 了解并掌握Qpainter的translate、 shear等庫函數(shù)的使用方法和widget類的使用方法,并通過本次實(shí)驗(yàn)加深理解;5,掌握在QtDesigner界面上為菜單項(xiàng)添加工具欄按鈕、 創(chuàng)建相應(yīng)槽函數(shù)的方法;6, 了解并掌握使用雙緩沖機(jī)制繪 圖的方

22、法。二、實(shí)驗(yàn)環(huán)境操作系統(tǒng):windows7應(yīng)用軟件:Qtcreator開發(fā)平臺:三、程序流程圖 四、核心源代碼的內(nèi)容(實(shí)現(xiàn)菜單項(xiàng)的功能和繪圖功能的調(diào)用)ttinclude""ttinclude""ttinclude""ttincludettincludettincludettinclude""mainwindow:mainwindow(Qwidget*parent):Qmainwindow(parent),ui (newui:mainwindow)ui->setupui (this);setwindowTit

23、le (tr (nQt 繪圖板");setFixedsize(700,500);ng");creatcolorcombobox (ui->pencolorcombobox); 畫筆 顏色組合框creatcolorcombobox (ui->brushcolorcombobox); 填 充顏色組合框)ma inwindow: : mainwindowO(deleteui;)voidmainwindow:changeevent(Qevent*e)Qmainwindow:changeevent (e);switch(e->type() caseQevent:Languagechange:ui->retranslateui (this);break;default:break;)voidmainwindow:doopen()(if(maybesave ()(Qstringfilename=QFileDialog:getopenFilename(this, tr ("打開文件"),QDir: : currentpath();if(!0)(area->openlmage(f ilename); scrollArea->widget()->

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論