資源描述:
《vb猜數(shù)字游戲課程設(shè)計(jì)報(bào)告》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。
1、猜數(shù)字游戲猜數(shù)字游戲?qū)嶒?yàn)報(bào)告課程設(shè)計(jì)的目的課程設(shè)計(jì)為學(xué)生提供了一個(gè)既能動(dòng)手又能動(dòng)腦,獨(dú)立實(shí)踐的機(jī)會(huì),將課本上的vb課理論知識(shí)和實(shí)踐有機(jī)的結(jié)合起來(lái),鍛煉學(xué)生的分析解決實(shí)際問(wèn)題的能力、提高運(yùn)用vb應(yīng)用的能力。課程設(shè)計(jì)題目和簡(jiǎn)介猜數(shù)字游戲;游戲開(kāi)始時(shí)系統(tǒng)將隨機(jī)產(chǎn)生一個(gè)數(shù)字不同的四位數(shù),玩家根據(jù)游戲提示糾正答案(1A0B:表示猜中一個(gè)數(shù)字且位置正確;2A2B:有兩個(gè)數(shù)字正確且位置正確有兩個(gè)數(shù)字正確當(dāng)位置不正確)輸入的數(shù)字不能相同也不能為空而且只有十次機(jī)會(huì)。設(shè)計(jì)說(shuō)明開(kāi)始游戲Randomize產(chǎn)生隨機(jī)數(shù)用戶輸入值確定比較隨機(jī)值與輸入
2、值給出提示退出游戲設(shè)計(jì)思路首先要?jiǎng)?chuàng)建三個(gè)窗口,form1是進(jìn)入游戲界面,form2是游戲運(yùn)行界面,form3是游戲規(guī)則介紹。1其次要按要求實(shí)現(xiàn)三個(gè)窗口的show與hide在代碼為PrivateSubcommand*_click()form*.showForm*.hideEndsub在form3中我沒(méi)有用這種方法,因?yàn)樵趂orm3中又關(guān)閉按鈕,如果想之前一樣的話,按關(guān)閉按鈕就直接退出游戲了,而我想要實(shí)現(xiàn)是再次回到游戲進(jìn)入界面,所以有用了一個(gè)方法代碼為:Privatesubform_unload(Cancleasintege
3、r)Form1.showEndsub這樣子就防止之前那種情況的發(fā)生了下一步開(kāi)始創(chuàng)建控件現(xiàn)在form1中創(chuàng)建游戲進(jìn)入界面,根據(jù)游戲需要應(yīng)該創(chuàng)建3個(gè)command控件,和一個(gè)label控件2然后開(kāi)始編寫代碼代碼如下PrivateSubCommand1_Click()Form1.Hideform2.ShowEndSubPrivateSubCommand2_Click()Form1.HideForm3.ShowEndSubPrivateSubCommand3_Click()EndEndSub3PrivateSubForm_Loa
4、d()Label1.BackStyle=0把label1的背景方式改為透明EndSub當(dāng)然也可以在form1的界面上加上自己喜歡的圖片,需要在picture中加載然后在form3中設(shè)計(jì)游戲規(guī)則界面這個(gè)界面中我把最大化與最化省去了,然后把關(guān)閉按鈕編寫了一下在form3的屬性欄中吧minbutton和maxbutton的屬性改為false這樣子就不會(huì)有最大最小化按鈕了剩下的就編寫代碼了4PrivateSubForm_Load()Label1.BackStyle=0EndSubPrivateSubForm_unload(Can
5、cleAsInteger)Form1.ShowEndSub也可以在form3界面中加載自己喜歡的圖片下面的也是這個(gè)程序中最重要的程序——游戲的編寫首先應(yīng)該創(chuàng)建控件5也就是說(shuō)要?jiǎng)?chuàng)建4個(gè)command控件和4個(gè)text控件2個(gè)label控件然后開(kāi)始編寫代碼Dima1AsInteger,a2AsInteger,a3AsInteger,a4AsIntegerPubliccishuAsIntegerPrivateSubCommand1_Click()在點(diǎn)擊開(kāi)始按鈕之后command是可見(jiàn)的,可使用的Command2.Enabled
6、=TrueCommand3.Enabled=TrueRandomize隨機(jī)產(chǎn)生四個(gè)不同的數(shù)字Label2.Caption=0&"A"&0&"B"a1=Int(10*Rnd)Doa2=Int(10*Rnd)LoopWhilea2=a16Doa3=Int(10*Rnd)LoopWhilea3=a1Ora3=a2Doa4=Int(10*Rnd)LoopWhilea4=a1Ora4=a2Ora4=a3Label1.Caption="已經(jīng)隨機(jī)產(chǎn)生了一個(gè)數(shù)字(0~9)不同的四位數(shù)!猜猜是什么數(shù)吧!"EndSubPrivateSubC
7、ommand2_Click()重新開(kāi)始游戲的設(shè)置cishu=0Text1.Text=""Text2.Text=""Text3.Text=""Text4.Text=""RandomizeLabel2.Caption=0&"A"&0&"B"a1=Int(10*Rnd)7Doa2=Int(10*Rnd)LoopWhilea2=a1Doa3=Int(10*Rnd)LoopWhilea3=a1Ora3=a2Doa4=Int(10*Rnd)LoopWhilea4=a1Ora4=a2Ora4=a3Label1.Caption="已經(jīng)隨
8、機(jī)產(chǎn)生了一個(gè)數(shù)字(0~9)不同的四位數(shù)!猜猜是什么數(shù)吧!"EndSubPrivateSubCommand4_Click()EndEndSubPrivateSubForm_Load()可以使command2和command3點(diǎn)擊開(kāi)始游戲按扭之前是灰色的不可用的Command2.Enabled=FalseCommand3