資源描述:
《簡單的的屏幕保護(hù)程序設(shè)計(jì)報(bào)告》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、河北聯(lián)合大學(xué)《軟件設(shè)計(jì)基礎(chǔ)(VB)》課程設(shè)計(jì)報(bào)告設(shè)計(jì)名稱:簡單的屏幕保護(hù)程序姓名:郭昊鑫學(xué)號:201006010223專業(yè)班級:10級冶金工程二班學(xué)院:冶金與能源學(xué)院設(shè)計(jì)時間:2011年6月10日——7月10日設(shè)計(jì)地點(diǎn):學(xué)校機(jī)房四樓成績:指導(dǎo)教師評語:指導(dǎo)教師簽字:年月日《軟件設(shè)計(jì)基礎(chǔ)(VB)》課程設(shè)計(jì)報(bào)告第11頁,共11頁目錄1.課程設(shè)計(jì)目的(3)2.課程設(shè)計(jì)任務(wù)與要求(3)3.課程設(shè)計(jì)說明書(4)4.課程設(shè)計(jì)成果(9)5.程序調(diào)試過程(10)6.設(shè)計(jì)問題的不足和改進(jìn)方案(11)7.課程設(shè)計(jì)心得(11)5.附錄(10)5.參考文獻(xiàn)(10)《軟件設(shè)計(jì)基礎(chǔ)
2、(VB)》課程設(shè)計(jì)報(bào)告第11頁,共11頁1.課程設(shè)計(jì)目的《軟件設(shè)計(jì)基礎(chǔ)(VB)》課程設(shè)計(jì)是這門課程的實(shí)踐性教學(xué)環(huán)節(jié)之一,本次設(shè)計(jì)結(jié)合實(shí)際應(yīng)用的要求,使課程設(shè)計(jì)既覆蓋VB的知識點(diǎn),又接近工程實(shí)際需要。目的是通過課程設(shè)計(jì)的綜合訓(xùn)練,培養(yǎng)學(xué)生實(shí)際分析問題、解決問題的能力,以及編程和動手能力,最終目標(biāo)是通過課程設(shè)計(jì)這種形式,幫助學(xué)生系統(tǒng)掌握VB這門課程的主要內(nèi)容,養(yǎng)成良好的編程習(xí)慣,更好的完成教學(xué)任務(wù)。2.課程設(shè)計(jì)任務(wù)與要求:要求:本次課程設(shè)計(jì)利用《軟件設(shè)計(jì)基礎(chǔ)(VB)》課程中所學(xué)到的編程知識和編程技巧,完成具有一定難度和工作量的程序設(shè)計(jì)題目,幫助學(xué)生掌握編程、
3、調(diào)試的基本技能,獨(dú)立完成所布置的任務(wù)。1.要求:(1)對系統(tǒng)進(jìn)行功能需求分析(2)設(shè)計(jì)合理的數(shù)據(jù)結(jié)構(gòu)和系統(tǒng)框架(3)界面設(shè)計(jì)美觀、清楚、合理(4)編程簡練,程序功能齊全,能正確運(yùn)行(5)具有一定的創(chuàng)新性(6)說明書、流程圖要清楚(7)課題完成后必須按要求提交課程設(shè)計(jì)報(bào)告(8)任務(wù):2.基本要求:①要求用VisualBasic對象的思想來完成程序的設(shè)計(jì)。②欲完成此設(shè)計(jì)題目,要求熟練使用和掌握Timer控件的屬性和方法以及窗體調(diào)用的方法和基本屬性。③要求在程序中能夠運(yùn)用結(jié)構(gòu)化程序設(shè)計(jì)的選擇結(jié)構(gòu),并熟練使用相關(guān)的語句以及全局變量的定義《軟件設(shè)計(jì)基礎(chǔ)(VB)》課
4、程設(shè)計(jì)報(bào)告第11頁,共11頁3.課程設(shè)計(jì)說明書(1)功能描述簡單的屏幕保護(hù)程序:主界面充滿屏幕,背景為一張畫(其他畫也可),在窗體上插入圖片,圖片會以從上到下或者從下到上等六種方式展開。當(dāng)單擊鼠標(biāo)或鍵盤時則退出屏保。(2)模塊結(jié)構(gòu)圖根據(jù)功能分析,建立系統(tǒng)的體系結(jié)構(gòu),即將整個系統(tǒng)分解成若干子模塊,用框圖表示各功能模塊之間的接口關(guān)系(如下圖)。代碼如下:form1作用:“進(jìn)入應(yīng)用程序”。所用控件:6個標(biāo)簽,1個時鐘。詳細(xì)內(nèi)容:屬性較特殊的需要說明。代碼如下:PrivateDeclareFunctionSetPixelLib"gdi32"(ByValhdcAs
5、Long,ByValxAsLong,ByValyAsLong,ByValcrcolorAsLong)AsLongPrivateDeclareFunctionGetPixelLib"gdi32"(ByValhdcAsLong,ByValxAsLong,ByValyAsLong)AsLongDimmovemodeAsIntegerDimpicmodeAsIntegerPrivateSubform_keypress(keyasciiAsInteger)EndEndSubPrivateSubForm_Load()《軟件設(shè)計(jì)基礎(chǔ)(VB)》課程設(shè)計(jì)報(bào)告第11頁,共1
6、1頁Randomizemovemode=Int(Rnd*6)Randomizepicmode=Int(Rnd*4)Fori=0To3Picture1(i).Visible=FalsePicture1(i).ScaleMode=3NextiEndSubSubmove1()'從左往右展開mx=Picture1(picmode).ScaleWidthmy=Picture1(picmode).ScaleHeightForx=0TomxFory=0Tomya=GetPixel(Picture1(picmode).hdc,x,y)b=SetPixel(Me.hdc,
7、x,y,a)NextyDoEventsNextxdelay1000EndSubSubmove2()'從上往下展開mx=Picture1(picmode).ScaleWidthmy=Picture1(picmode).ScaleHeightFory=0TomyForx=0Tomxa=GetPixel(Picture1(picmode).hdc,x,y)b=SetPixel(Me.hdc,x,y,a)Nextx《軟件設(shè)計(jì)基礎(chǔ)(VB)》課程設(shè)計(jì)報(bào)告第11頁,共11頁DoEventsNextydelay1000EndSubSubmove3()'從右往左展開mx=
8、Picture1(picmode).ScaleWidthmy=Picture1(