【正文】
該界面中,可以自己任意給出四個(gè)( 113)的整數(shù),按 [OK]鍵后由程序自動(dòng)算出答案。按 [Clear]鍵可以重新再測試,按 [Return]可以回到主界面。 該界面中程序自動(dòng)給出答案的主要代碼如下: Private Sub TestCards(Num As Integer) 39。參數(shù) num 是用戶選擇的數(shù)值 16 Dim iCount As Integer If iCardsNumber = 4 Then iCardsNumber = 0 If iCardsNumber = 3 Then TestNumberFour = True 39。用戶已經(jīng)選夠了牌數(shù) If TestNumberFour Then = True Else = False End If Randomize 39。初始化隨機(jī) tt = Int(Rnd() * 4 + 1) 39。產(chǎn)生一個(gè)隨機(jī)數(shù) Select Case tt 39。用于顯示四種不同種類的牌 Case 1 iCount = 0 + Num Case 2 iCount = 13 + Num Case 3 iCount = 26 + Num Case 4 iCount = 39 + Num End Select = iRndCardsNumber(iCardsNumber + 1) = Num 39。將數(shù)值裝入數(shù)組以便計(jì)算時(shí)使用 = (iCount).Picture Dim a Dim W As Integer W = Int(Rnd * 3 + 1) 39。隨機(jī)產(chǎn)生一種特殊顯示模式 17 a = px(CardsPicture(iCardsNumber), CardsPictureClip, W) CardsPicture(iCardsNumber).Picture = (iCount).Picture iCardsNumber = iCardsNumber + 1 End Sub ( 3)使用說明界面設(shè)計(jì) 這幾個(gè)界面主要用于向用戶說明如何玩這個(gè)游戲,各界面上的按鈕如何使用。同時(shí)也說明版權(quán)所有。 其主要代碼為: Private Sub Form_Load() = = 0 = 0 = 100 = 25 = 2040 = 360 = True = 2150 = 360 = False = 2100 = 360 = False = 2040 = 360 = False = 2040 = 360 = False 18 = False End Sub 39。隱藏四個(gè)邊框 Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) ButBorder(0).Visible = False ButBorder(1).Visible = False ButBorder(2).Visible = False ButBorder(3).Visible = False End Sub ① 開牌 /答題界面 圖 36 24點(diǎn)紙牌 開牌 /答題 ② 時(shí)間設(shè)置 界面 圖 37 24點(diǎn)紙牌時(shí)間設(shè)置界面 19 ③ 開 /關(guān)時(shí)間 界面 圖 38 24點(diǎn)紙牌開 /關(guān)時(shí)間界面 ④ 測試 界面 圖 39 24點(diǎn)紙牌測試界面 ⑤ 其它 界面 圖 310 24點(diǎn)紙牌其它界面 20 ⑥ 作者 界面 圖 311 24點(diǎn)紙牌作者界面 拼拼圖的開發(fā) ( 1)主界面設(shè)計(jì) 顯示上次載入的外部圖片 ,根據(jù)右上角的小圖片在大圖中任意移動(dòng)各分塊,把圖拼出來。 按 [新游戲 ]鍵重新開始游戲。游戲開始后,點(diǎn)擊已被分割的圖片,程序會(huì)自動(dòng)判斷上下左右任意一塊是否為空,若為空,則移動(dòng)到為空的位置。按 [設(shè)置 ]鍵出現(xiàn)設(shè)置游戲界面 。按 [退出 ]鍵直接退出游戲,按 [關(guān)于 ]鍵顯示版權(quán)信息。 圖 312 拼拼圖主界面 21 主要代碼如下: Private Sub ImageElement_Click(Index As Integer) Dim RLflags As Boolean If ImageElement(0).BorderStyle = 0 Then Exit Sub moveFlags = False 39。已移動(dòng)標(biāo)志設(shè)為假 If Index = elementNum And Not moveFlags Then 39。圖片移出最后單元 moveImage Index, 0 Gamewin 39。調(diào)用判斷游戲是否成功子過程 End If If Index = 0 And Not moveFlags Then 39。圖片移入最后單元 moveImage 0, elementNum End If 39。移動(dòng)右列單元圖片 If (Index Mod ColNum) = 0 And Not moveFlags And Index elementNum Then moveImage Index, Index ColNum moveImage Index, Index + 1 If Index + ColNum elementNum Then moveImage Index, Index + ColNum End If RLflags = True End If 39。移動(dòng)左列單元圖片 If (Index + 1) Mod ColNum = 0 And Not moveFlags Then moveImage Index, Index 1 moveImage Index, Index + ColNum moveImage Index, Index ColNum RLflags = True End If 39。移動(dòng)中間列單元圖片 If Not Flags And Index And Not RLflags And Index elementNum Then moveImage Index, Index 1 moveImage Index, Index + 1 22 moveImage Index, Index + ColNum moveImage Index, Index ColNum End If End Sub Private Sub moveImage(Source As Integer, Target As Integer) 39。移動(dòng)圖片子過程 If Target = 0 And Target = elementNum Then 39。判斷是否出界 39。判斷源單元 ,目標(biāo)單元是否符合移動(dòng)條件 If ImageElement(Target).Picture = 0 And ImageElement(Source).Picture 0 Then 39。移動(dòng)圖片及子單元索引標(biāo)識(shí) ImageElement(Target).Picture = ImageElement(Source).Picture ImageElement(Source).Picture = LoadPicture() ImageElement(Target).Tag = ImageElement(Source).Tag moveFlags = True 39。已移動(dòng)標(biāo)志設(shè)為真 End If End If End Sub ( 2) 游戲 設(shè)置界面 圖 313 拼拼圖游戲設(shè)置界面 在該界面中,可以從已有的圖片中選出自己喜歡的圖片進(jìn)行游戲,也可以使用載入圖片,到其他文檔中挑自己喜歡的圖片加載 進(jìn)去。點(diǎn)擊 [確定 ]即完成游戲設(shè)置。 23 主要代碼如下: If = 1 Then = GSppt! 39。選擇選擇框時(shí) ,顯示上次載入的外部圖片 Else For i = 0 To optNum 1 If Optpict(i).Value