qt畫圖實驗報告_第1頁
qt畫圖實驗報告_第2頁
qt畫圖實驗報告_第3頁
qt畫圖實驗報告_第4頁
qt畫圖實驗報告_第5頁
免費預覽已結束,剩余19頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

2、口功能,如打開、新建等。2功能需求實現一個基本的窗口程序,包括一個菜單條,一個工具 欄,中央可編輯窗體及狀態欄。實現的效果如圖所示。在編寫文本編輯器等應用中,需 要對文本進行排序,以列表的方式顯示各段文本。即實現文本的排序功能,并實現文本的對齊及撤銷和恢復功 能,如圖所示。在編輯框中任意輸入幾段文字,單擊工具欄 上的下拉列表框,選擇排序方式,則光標所在的文本段以所選排序方式自動縮進排序顯示,并且緊 接著的文本段以同樣的方式排列;工具欄中部的4個快捷按鈕實現文本的對齊功能,分別為 左對齊,右對齊、居中和兩端對齊;工具欄右部的快捷按鈕實現文本操作的前進/回退功能。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#三、實驗總結篇三:用qt實現桌面時鐘設計.doc附件【學生用】西北農林科技大學信息工程學院面向對象實 習實習報告題學號姓名專業班級指導教師實踐日期目:桌面時鐘設 計與實現目錄一、綜合訓練目的與要1二、綜

7、合訓練任務.1三、總體設計2四、詳細設計說明4五、調試與測試5六、實習日志9七、實習總結9八、附錄:核心代碼清單9一、綜合訓練目的與要求正文這次面向對象實習實踐活 動是在C+面向對象程序設計之后進行的實踐環節旨在加深對面向對象編程的設計思想(類的設計,抽象,封裝, 包含與繼承,多態性,uml圖)的理解,掌握使用C+編程的基本的技能,從而能通過小 型的團隊開發一些小軟件的實現與設計,并能夠解決一定的實際問題。以及掌握撰寫規范程 序設計文檔的能力,還有訓練語言組織與表達能力,提高綜合能力。二、綜合訓練任務1、需求分析隨著科學技術的不斷發 展,計算機已經成為了我們日常工作生活和學習中不可缺少 的工具

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

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

10、的聯系進行組合,反映出程序中結構和整體的框架。 便于后期編程。篇四:qt實驗報告面向對象程序設計2實驗 報告專業:計算機科學與技術年級:20XX級班級:工科1班 學號:0姓名:黃劍波目錄實驗一:線程通信:門鈴1、實驗目的篇二:QT版連連看制作的實驗報告一.游戲概述游戲簡介游戲“連連看”顧名思義就是找出相關聯的東西,這個 連連看在網上基本是用在小游戲中,就是找出相同的兩樣東 西,在一定的規則之內可以做為相關聯處理。“連連看”的 發展經歷了從桌面游戲、在線游戲、社交游戲三個過程。游戲“連連看”是源自臺灣的桌面小游戲,自從流入大 陸以來風靡一時,也吸引眾多程序員開發出多種版本的“連 連看“。這其中,

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

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

13、gul程序并沒辦法跨平臺compile,因為各平臺都 有專屬的Library。但是c/c+優勢就是執行速度快,若能 解決guILibrary的問題,則跨平臺即可解決。除了 guILibrary需要統一外,還得看該Library設計 的好不好才行,Linuxgul我沒寫過就不說了,若在windows平臺, borland 的 c+builder 使用 Delphi 的 VcLLibrary, microsoft 的 Visualc+可以用 mFc 和.neTFramework,首先 來看borland的c+builder,它使用標準的Anslc+語言開 發,利用VcL寫出來的程序也算蠻漂亮的,執

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

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

16、是c+builder 或Visualc+開發的gul,所開發出來的程序都無法跨平臺, 當然也無法跨平臺compileo(1) QT的介紹Qt是一個多平臺的C+圖形用戶界面應用程序框架。它提供給應用程序開發者建立藝術級的圖形用戶界面所需的所用功能。Qt是完全面向對象的很容易擴展,并且允許真正 地組件編程。自從1996年早些時候,Qt進入商業領域,它已經成為 全世界范圍內數千種成功的應用程序的基礎。Qt也是流行的 Linux桌面環境KDe的基礎,KDe是所有主要的Linux發行 版的一個標準組件。Qt的特點有:可移植性、易用性、執行 速度快等特點。(2) QT的優勢xmL支持。大量的開發文檔支持2

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

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

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

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

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

22、法。二、實驗環境操作系統:windows7應用軟件:Qtcreator開發平臺:三、程序流程圖 四、核心源代碼的內容(實現菜單項的功能和繪圖功能的調用)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. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論