版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
(北京)計算機(jī)語言課程設(shè)計——背單詞院系:地球物理與信息工程學(xué)院專業(yè):自動化09小構(gòu)成員:常潤秀、覃丹丹、周衍彤陳建龍、黃冬完畢日期:7月14日小組設(shè)計成績:評閱:評閱:1.程序運(yùn)營狀況:2.答辯狀況:3.平時體現(xiàn):4.設(shè)計報告:一、設(shè)計目:綜合運(yùn)用面向?qū)ο箝_發(fā)工具,設(shè)計Windows風(fēng)格軟件。通過本次程序設(shè)計題目,使學(xué)生純熟掌握Windows應(yīng)用程序開發(fā)過程,為后來專業(yè)課學(xué)習(xí)奠定基本。二、所選編程語言:VisualBasic6.0三、系統(tǒng)總體設(shè)計思路:背單詞軟件是英語學(xué)習(xí)類軟件分支,是專門針對顧客背誦英語單詞,掌握詞匯量而制作輔助學(xué)習(xí)軟件。由于媒介為個人電腦,因此背單詞軟件有著其他背單詞工具無法達(dá)到智能化與互動性,但相相應(yīng),過于依賴電腦和較差便攜性成為其缺陷。因此作為背單詞軟件設(shè)計思路應(yīng)當(dāng)簡樸為原則。顧客操作必要簡樸、以便為原則。本題目共提供了“大學(xué)英語四級詞匯”和“大學(xué)英語六級詞匯”兩個詞庫文獻(xiàn)(分別是grade4.txt和grade6.txt),通過“詞庫設(shè)立”中“詞庫”組合框可以選取想要詞庫。默認(rèn)詞庫是“大學(xué)英語四級詞匯”。為了便于顧客使用,程序容許選取想要記憶單詞范疇。默認(rèn)單詞范疇是“A至Z”,即所有單詞。如果選取范疇是“A至C”,那么程序只顯示以A、B和C字母開頭單詞。程序應(yīng)保證“起始字母”在“終結(jié)字母”之前,即不會浮現(xiàn)類似于“C至A”狀況。(3)據(jù)需要選取“隨機(jī)”或“循環(huán)”復(fù)選框。如果不選取“隨機(jī)”,則顯示單詞時是以單詞在詞庫中順序(即字母順序)顯示,否則以隨機(jī)順序顯示。如果不選取“循環(huán)”復(fù)選框,單詞顯示一遍之后自動停止回到起始狀態(tài)。如果選取了“循環(huán)”復(fù)選框,顯示一遍之后會自動從頭開始顯示。在隨機(jī)方式之下,循環(huán)是沒故意義,因此當(dāng)“隨機(jī)”復(fù)選框選定期,“循環(huán)”復(fù)選框應(yīng)變?yōu)闊o效且呈現(xiàn)未選定狀態(tài)。(4)畢后,單擊“開始”按鈕,窗口最上方顯示區(qū)域從右向左以字幕方式動態(tài)顯示所選單詞,涉及詞性和詞義。在顯示過程中可以變化字體大小、滾動速度和背景顯示顏色。單擊“暫?!卑粹o可以暫停滾動,這時“暫?!卑粹o變?yōu)椤袄^續(xù)”,單擊會繼續(xù)滾動。單擊“退出”按鈕退出主界面。設(shè)計任務(wù)分工安排:由于小組由五名成員構(gòu)成,可將界面模塊分為五個某些:1.滾動字幕以及某些有關(guān)控制控件。設(shè)計人員:陳建龍。2.字體大小,滾動速度,背景顏色控制。設(shè)計人員:常潤秀。3.詞庫選取。設(shè)計人員:覃丹丹,黃冬。4.顯示方式(隨機(jī),循環(huán))設(shè)計人員:覃丹丹,黃冬。5.主界面其她有關(guān)控件,以及其她彈出界面和進(jìn)入界面。設(shè)計人員:周衍彤。設(shè)計進(jìn)度安排:設(shè)計時間:.7.7~.7.8,.7.11~.7.137、8號找到各某些設(shè)計思路,進(jìn)行初步設(shè)計11號各控件、模塊設(shè)計完畢12號各控件、模塊組合13號設(shè)計報告撰寫四、系統(tǒng)各功能模塊設(shè)計涉及采用核心控件、核心技術(shù)、重要界面通過運(yùn)營本程序,可以輕松背單詞。重要功能涉及選取詞庫范疇(大學(xué)英語四級詞匯、大學(xué)英語六級詞匯)、選取首字母范疇、選取播放方式(隨機(jī)、循環(huán))、變化字體大小、變化滾動速度、變化滾動條背景顏色等。重要界面A、首界面:可以選取“點(diǎn)擊進(jìn)入”按鈕或者“退出”按鈕,繼續(xù)程序。B、選取點(diǎn)擊進(jìn)入之后,進(jìn)入主程序界面。C、單擊使用闡明按鈕,彈出對話框。核心控件按鈕控件:本程序中運(yùn)用大量按鈕控件,分別控制首界面中“點(diǎn)擊進(jìn)入”、“退出”,主程序界面中“開始”、“暫?!薄ⅰ巴顺觥?、“使用闡明”以及滾動條兩側(cè)“左移”、“右移”功能。在首界面中,單擊“點(diǎn)擊進(jìn)入”按鈕后,首界面消失,進(jìn)入主程序界面。單擊“退出”按鈕,彈出”與否退出”對話框。在主程序界面中,單擊“開始”按鈕之前,“暫?!卑粹o為灰顯狀態(tài)。單擊“開始”按鈕,滾動條開始滾動,此時單擊“暫?!卑粹o,滾動條停止?jié)L動,“暫?!卑粹o變更為“繼續(xù)”按鈕,單擊”繼續(xù)“按鈕,滾動條繼續(xù)滾動。單擊“退出”按鈕,回歸首界面。單擊“使用闡明”,彈出“使用闡明”窗體。點(diǎn)擊“左移”、“右移”按鈕,滾動條相應(yīng)左右移動。標(biāo)簽控件:本程序使用大量標(biāo)簽控件,以便標(biāo)注各個控件功能。組合框控件本程序中共有三個組合框,分別控制詞庫范疇(大學(xué)英語四級詞匯、大學(xué)英語六級詞匯)、首字母范疇選取。滾動條控件本程序中共有四個滾動條控件,分別控制滾動速度、滾動條背景顏色更改。復(fù)選框控件通過對復(fù)選框按鈕選取,選取播放方式(隨機(jī)、循環(huán))。點(diǎn)擊“隨機(jī)”框,“循環(huán)”框為灰顯狀態(tài),滾動單詞內(nèi)容隨機(jī)播放。點(diǎn)擊“循環(huán)”框,選取首字母范疇之后,在該字母范疇內(nèi)循環(huán)播放。單選按鈕控件通過對單選按鈕選取,選取滾動字體大小。單擊“大字體”框時,字體變?yōu)?0號字。單擊“小字體”框時,字體為14號字。圖像框控件首界面中圖片放置。文本框控件構(gòu)成滾動字體(三)核心技術(shù)A、時鐘與滾動將時鐘Interval設(shè)定為顯示速度滾動條值線性函數(shù)(Timer1.Interval=HScroll1.Value*20),時鐘速度便由滾動條值控制,成為為可調(diào)。為了循環(huán)執(zhí)行,這里定義一種隨機(jī)變量k。隨著時鐘計時,當(dāng)text1中顯示內(nèi)容從左起第一種字符ASCII碼不不大于零,則其字幕顯示為前一種詞從第四位開始取長度為這個詞長度減三某些和后一種詞前三位某些,k=k+3。而當(dāng)text1中顯示內(nèi)容從左起第一種字符ASCII碼不大于零,則其字幕顯示為前一種詞從第二位開始取長度為這個詞長度減一某些和后一種詞第一位某些,k=k+1。如此便形成了字幕可以以不同速度滾動效果。B、詞庫選取與調(diào)用文檔當(dāng)詞庫選取組合框1選取大學(xué)英語四級詞匯時,便open大學(xué)英語四級詞匯文本文檔命名為#1以input形式使用;當(dāng)詞庫選取組合框1選取大學(xué)英語六級詞匯時,便open大學(xué)英語六級詞匯文本文檔命名為#1以input形式使用。注意:文檔中單詞按順序排列,一行一種,首字前有四個空格,每一次首字母變化前加入書寫“/”一行,以便背面設(shè)定范疇之用。通過while循環(huán),文檔內(nèi)容以字符串nextline按行輸入遇到“/”則顯示空白。C、范疇設(shè)定范疇設(shè)定有兩個方面。1)若下限比上限小,下限設(shè)定為空白。如此便滿足了下限不比上限小規(guī)定。2)組合框2和3是用來設(shè)定范疇,她們每個選項均有一種編號ListIndex。設(shè)定上限時,咱們再一次用到ASCII碼。當(dāng)用來存儲nextline數(shù)組s()元素s(m)第五位(即單詞首字母)ASCII碼比組合框2ListIndex+96值大時候,用來存儲有效字符串?dāng)?shù)組t(r)下標(biāo)r開始計數(shù)。令s(m)=t(r),則上限設(shè)定成功。設(shè)定下限時,咱們用變量j來對“/”計數(shù)。當(dāng)j比組合框3ListIndex大時,跳出while循環(huán)。如此,下限便得到了控制。D、對隨機(jī)顯示控制未選取復(fù)選框1時,用for循環(huán)按Text1.Text=Text1.Text&t(n)使字幕順序顯示;選取時,用Randomize產(chǎn)生1到r-1之間隨機(jī)數(shù),將r值依次存入到數(shù)組a(n)中,用for循環(huán)按Text1.Text=Text1.Text&t(a(n))使字幕隨機(jī)顯示。E、循環(huán)控制由于時鐘不會停,系統(tǒng)默認(rèn)是循環(huán),因此咱們只需對不選復(fù)選框2狀況進(jìn)行控制。咱們在A中提到k值,在這里開始顯示作用。當(dāng)k值不不大于text1顯示內(nèi)容總長度后,輸出空白,即不循環(huán)。F、字幕左右移動當(dāng)點(diǎn)擊按鈕5時,咱們用Text1.Text=Mid(Text1.Text,11,Len(Text1.Text)-10)&Left(Text1.Text,10)來使字幕左移;當(dāng)點(diǎn)擊按鈕6時,咱們用Text1.Text=Mid(Text1.Text,Len(Text1.Text)-9,10)&Left(Text1.Text,Len(Text1.Text)-10)來使字幕右移。五、軟件運(yùn)營成果(1)、運(yùn)營程序,可顯示一種背單詞首界面?!包c(diǎn)擊進(jìn)入”即可進(jìn)入背單詞主界面
(2)、提供了“大學(xué)英語四級詞匯”和“大學(xué)英語六級詞匯”兩個詞庫文獻(xiàn),通過“詞庫”組合框可以選取想要題庫,默認(rèn)詞庫是“大學(xué)英語四級詞匯”。(3)、為了便于顧客使用,可以選取想要記憶單詞范疇,默認(rèn)單詞范疇是“A~Z”。.(4)、依照需要選取“隨機(jī)”或“循環(huán)”復(fù)選框。如果兩者都不選,則默認(rèn)顯示單詞表顯示到最后一種單詞即停止;如果選取“隨機(jī)”復(fù)選框,“循環(huán)”復(fù)選框變?yōu)闊o效且不可選定狀態(tài)。如果選取了“循環(huán)”復(fù)選框,顯示一遍之后會自動從頭開始顯示。
(5)、通過“其她設(shè)立”中“字體大小”單選框可以選取滾動單詞時字體大小。(6)、通過操作滾動條可以設(shè)立字幕滾動速度。(7)、通過顏色設(shè)立里面對R、G、B調(diào)節(jié)可以實(shí)現(xiàn)對顯示單詞欄背景顏色調(diào)節(jié)。(8)、設(shè)立完畢后,單擊“開始”按鈕,窗口最上方顯示區(qū)域從右向左以字幕方式動態(tài)顯示所選單詞,涉及詞性和詞義,如圖14.4所示。在顯示過程中可以變化字體大小、滾動速度和顯示顏色。單擊“暫?!卑粹o可以暫停滾動,這時“暫?!卑粹o變?yōu)椤袄^續(xù)”,單擊會繼續(xù)滾動。(9)、單擊該主界面“退出”,及時回到咱們進(jìn)入界面,繼續(xù)單擊“退出”,即可完全退出背單詞程序。
(10)、若對本運(yùn)營軟件操作有疑問,進(jìn)入主界面后可以單擊左下角使用闡明。六、設(shè)計總結(jié)通過這次課程設(shè)計,VB編程水平有了很大提高。從最開始編寫這個程序到程序運(yùn)營,通過對程序重復(fù)調(diào)試與修改,深刻感受到編寫一種程序是一種漫長而辛苦過程,需要編程人員具備足夠耐心與細(xì)心。與此同步也培養(yǎng)咱們查閱知識并通過自學(xué)掌握知識能力。
程序入手階段是困難,剛剛接觸一種新程序會感到無從下手。一方面要做某些準(zhǔn)備工作。要理解這個程序是干什么,它應(yīng)具備如何功能。當(dāng)明確了這些問題后來,就要針對不同功能逐個思考實(shí)現(xiàn)該功能辦法。對于每一種功能實(shí)現(xiàn)需要用到那些知識,通過查閱有關(guān)知識,做到心中有數(shù),再進(jìn)行編程。編程時要先制定一種大框架,用幾種模塊,什么模塊,那些事件過程,那些通用過程,當(dāng)大體輪廓出來后再進(jìn)行深一步編寫,考慮語句語法、邏輯,各個通用過程調(diào)用,事件過程實(shí)現(xiàn)。這里會遇到真正難以解決問題,要再次通過查閱多方資料并結(jié)合認(rèn)真思考來尋找解題思路。固然在編程過程中最重要一點(diǎn)就是善于總結(jié),這樣可以避免重蹈覆轍。
在程序編寫結(jié)束后,更要進(jìn)行總結(jié),認(rèn)真思考如何編寫一種過程是簡便快捷,在下次遇到同樣問題時可以節(jié)約時間,提高效率。
這次做課程設(shè)計,理解了程序編制過程和基本思維辦法,同步也對編程產(chǎn)生了濃厚興趣,但愿能在課余時間多編制某些這樣小程序,可以學(xué)到更多知識,同步提高編程速度,鍛煉思考方式,開拓思維空間,為咱們此后學(xué)習(xí)打下一種良好基本。七、參照文獻(xiàn)書籍參照:教學(xué)課件附錄:源程序(1)主界面(Form1):Dimi%,k%,m%,r%PrivateSubCheck1_Click()Check2.Value=0IfCheck1.Value=1ThenCheck2.Enabled=FalseElseCheck2.Enabled=TrueEndIfEndSub‘實(shí)現(xiàn)隨機(jī)與循環(huán)復(fù)選框選取PrivateSubCombo2_click()Combo3_ClickEndSubPrivateSubCombo3_Click()IfCombo3.ListIndex<Combo2.ListIndexThenCombo3.Text=""EndIfEndSub‘防止浮現(xiàn)上標(biāo)不不大于下標(biāo)浮現(xiàn)PrivateSubCommand1_Click()Command2.Enabled=TrueDimj%,n%Dims()AsStringDimt()AsStringj=0k=0m=0r=0Timer1.Interval=HScroll1.Value*20IfCombo1.Text="大學(xué)英語四級詞匯"ThenOpen"E:\背單詞程序完整\大學(xué)英語四級.txt"ForInputAs#1ElseIfCombo1.Text="大學(xué)英語六級詞匯"ThenOpen"E:\背單詞程序完整\大學(xué)英語六級詞匯.txt"ForInputAs#1EndIf‘詞庫選取DoWhileNotEOF(1)OnErrorResumeNextLineInput#1,nextlinem=m+1ReDimPreserves(m)s(m)=nextlineIfnextline="/"Thenj=j+1s(m)=""EndIfIfAsc(Mid(s(m),5,1))>Combo2.ListIndex+96Thenr=r+1ReDimPreservet(r)t(r)=s(m)EndIfIfj>Combo3.ListIndexThenExitDoEndIfLoop‘將詞庫每行數(shù)據(jù)存入s(n)中,下標(biāo)相應(yīng)行號。實(shí)現(xiàn)范疇選取,并將范疇內(nèi)每行數(shù)據(jù)存入t(r)中,下標(biāo)相應(yīng)行號。SelectCaseCheck1.ValueCase0Text1.Text=""Forn=1TorText1.Text=Text1.Text&t(n)NextnText1.Text=""&Text1.Text‘未選取隨機(jī)時文本輸出Case1Dima()AsStringDimY%,X%,z%Text1.Text=""z=r-1Forn=1Tor-1RandomizeY=Int((z-1)*Rnd)+1ReDimPreservea(n)a(n)=t(Y)ForX=YToz-1t(X)=t(X+1)’將t()中已經(jīng)選取存入a(n)中元素剔除NextXz=z-1Nextn’將t(r)中所有元素以隨機(jī)順序存入a(n)Forn=1Tor-1Text1.Text=Text1.Text&a(n)NextnText1.Text=""&Text1.Text‘隨機(jī)方式輸出EndSelectCloseTimer1.Enabled=TrueIfCommand2.Caption="繼續(xù)"ThenCommand2.Caption="暫停"i=i+1EndSubPrivateSubCommand2_Click()IfiMod2=0ThenCommand2.Caption="繼續(xù)":Timer1.Enabled=FalseElseCommand2.Caption="暫停":Timer1.Enabled=TrueEndIfi=i+1EndSubPrivateSubCommand3_Click()大學(xué)英語四六級.Visible=TrueForm1.Visible=FalseEndSubPrivateSubCommand4_Click()Form2.Visible=TrueEndSubPrivateSubCommand5_Click()Text1.Text=Mid(Text1.Text,11,Len(Text1.Text)-10)&Left(Text1.Text,10)’使?jié)L動字幕左移10位EndSubPrivateSubCommand6_Click()Text1.Text=Mid(Text1.Text,Len(Text1.Text)-9,10)&Left(Text1.Text,Len(Text1.Text)-10)’使?jié)L動字幕右移10位EndSubPrivateSubForm_Load()Move(Screen.Width-Width)/2,(Screen.Height-Height)/2’Combo1.List(0)="大學(xué)英語四級詞匯"Combo1.List(1)="大學(xué)英語六級詞匯"Command2.Enabled=FalseCombo1.Text=Combo1.List(0)Combo2.List(0)="A"Combo2.List(1)="B"Combo2.List(2)="C"Combo2.List(3)="D"Combo2.List(4)="E"Combo2.List(5)="F"Combo2.List(6)="G"Combo2.List(7)="H"Combo2.List(8)="I"Combo2.List(9)="J"Combo2.List(10)="K"Combo2.List(11)="L"Combo2.List(12)="M"Combo2.List(13)="N"Combo2.List(14)="O"Combo2.List(15)="P"Combo2.List(16)="Q"Combo2.List(17)="R"Combo2.List(18)="S"Combo2.List(19)="T"Combo2.List(20)="U"Combo2.List(21)="V"Combo2.List(22)="W"Combo2.List(23)="X"Combo2.List(24)="Y"Combo2.List(25)="Z"Combo2.ListIndex=0Combo2.Text=Combo2.List(0)Combo3.List(0)="A"Combo3.List(1)="B"Combo3.List(2)="C"Combo3.List(3)="D"Combo3.List(4)="E"Combo3.List(5)="F"Combo3.List(6)="G"Combo3.List(7)="H"Combo3.List(8)="I"Combo3.List(9)="J"Combo3.List(10)="K"Combo3.List(11)="L"Combo3.List(12)="M"Combo3.List(13)="N"Combo3.List(14)="O"Combo3.List(15)="P"Combo3.List(16)="Q"Combo3.List(17)="R"Combo3.List(18)="S"Combo3.List(19)="T"Combo3.List(20)="U"Combo3.List(21)="V"Combo3.List(22)="W"Combo3.List(23)="X"Combo3.List(24)="Y"Combo3.List(25)="Z"Combo3.ListIndex=25Combo3.Text=Combo3.List(25)Option1.Value=TrueCheck1.Value=0Check2.Value=0HScroll2.Value=255HScroll3.Value=255HScroll4.Value=255EndSubPrivateSubHScroll1_Change()Timer1.Interval=HScroll1.Value*20EndSubPrivateSubHScroll2_Change()Text1.BackColor=RGB(HScroll2.Value,HScroll3.Value,HScroll4.Value)EndSubPrivateSubHScroll3_Change()Text1.BackColor=RGB(HScroll2.Value,HScroll3.Value,HScroll4.Value)EndSubPrivateSubHScroll4_Change()Text1.BackColor=RGB(HScroll2.Value,HScroll3.Value,HScroll4.Value)EndSubPrivateSubOption1_C
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 紡織財務(wù)制度
- 管家財務(wù)制度
- 建筑企業(yè)沖賬財務(wù)制度
- 賓館保管寄存財務(wù)制度
- 菜鳥驛站財務(wù)制度
- 農(nóng)公副產(chǎn)品制度
- 公司?;诽幜P制度
- 養(yǎng)老院老人關(guān)愛服務(wù)制度
- 企業(yè)人事財務(wù)管理制度(3篇)
- 中餐餐飲品牌管理制度(3篇)
- (2025年)軍隊文職考試面試真題及答案
- DBJ50T-100-2022 建筑邊坡工程施工質(zhì)量驗收標(biāo)準(zhǔn)
- 制造部年終總結(jié)
- DB51-T 192-2024 公園城市綠色景觀圍墻營建指南
- 《食品標(biāo)準(zhǔn)與法規(guī)》課件全套 第1-6章 緒論-食品生產(chǎn)經(jīng)營許可和認(rèn)證管理
- JBT 7562-2016 YEZX系列起重用錐形轉(zhuǎn)子制動三相異步電動機(jī) 技術(shù)條件
- 建筑工地安全形勢分析
- 【拼多多公司盈利能力探析11000字(論文)】
- 區(qū)域地質(zhì)調(diào)查及填圖方法
- 新生兒疫苗接種的注意事項與應(yīng)對措施
- 膿毒癥休克患者的麻醉管理
評論
0/150
提交評論