找回密碼 或 安全提問
 註冊
|註冊|登錄

伊莉討論區

搜索
請尊重及感激所有版主付出和奉獻尊貴會員無限觀看附件圖片搞笑、娛樂、精彩的影片讓你看
mgfc2ge 無碼overlordsiromg 無碼kkbox
浪子情歌governorescape fサキュバ玩家的生終極三國無修

休閒聊天興趣交流學術文化旅遊交流飲食交流家庭事務PC GAMETV GAME
熱門線上其他線上感情感性寵物交流家族門派動漫交流貼圖分享BL/GL
音樂世界影視娛樂女性頻道潮流資訊BT下載區GB下載區下載分享短片
電腦資訊數碼產品手機交流交易廣場網站事務長篇小說體育運動時事經濟
上班一族博彩娛樂

(4月新番)[繁]恰如細

[繁]劇場版 鬼太郎誕

斗破蒼穹 年番 鬥破蒼

花蓮太魯閣因地震造成

(4月新番)[簡]身為魔

[繁]迷宮飯 - 14
C & C++ 語言C# 語言Visual Basic 語言PHP 語言JAVA 語言
查看: 1583|回復: 4
打印上一主題下一主題

[求助]VB6 小遊戲 寫Code 但是有些錯誤 還有一些不會 可以幫我一下嗎?[複製鏈接]

冬梅秋菊 該用戶已被刪除
跳轉到指定樓層
樓主
發表於 2011-5-28 04:28 PM|只看該作者|倒序瀏覽
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。


我在試著做 Iphone 遊戲 1 to 50 我改成 1 to 25 容易點 XDD  可是還是有點問題

我的code是

  1. Dim Backcounter As Integer

  2. Dim Buttons(1 To 25) As Integer

  3. Private Sub Form_Load()
  4. Dim counta As Integer
  5. Randomize Timer
  6. Timer1.Interval = 10
  7. Timer2.Interval = 3000
  8. lblTimer.Caption = "00:00.00"
  9. lblBackcounter.Caption = "Ready"
  10. lblBackcounter.Enabled = True
  11. Timer2.Enabled = True
  12. lblNumber.Caption = 1
  13. numbercoutner = 1
  14. missed = 0
  15. lblMissedNumber.Caption = 0
  16. Time_Count = 0                  'reset counter for new record
  17. Backcounter = 0                 'make sure the "Ready" will come out (Backounter < 0)

  18. Call Swap
  19. For counta = 1 To 25
  20.    
  21.     Buttons(counta) = counta
  22.    
  23. Next
  24. For counta = 1 To 25
  25.     lblButtons(counta).Caption = Buttons(counta)
  26.    
  27. Next

  28. End Sub
  29. Private Sub lblButtons_Click(Index As Integer)
  30. If counta = numbercounter Then
  31.     numbercounter = numbercounter + 1
  32.    
  33. Else: missed = missed + 1 ' update the worry clcik
  34. End If
  35. If numbercounter = 26 Then 'finished 25 number
  36.     Game_Start = False
  37.    
  38.     frmEnterName.Show   'call out the Name from
  39.    
  40.    
  41. End If
  42. End Sub
  43. Private Sub lblMissedNumber_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  44. lblMissedNumber.Caption = missed
  45. End Sub
  46. Private Sub Timer1_Timer()
  47. Dim lSec    As Long
  48. Dim lMin    As Long
  49. Dim lminsec As Long
  50. If Timer2.Enabled = False Then
  51.     Time_Count = Time_Count + 1
  52.     lMin = Time_Count \ 6000
  53.     lSec = (Time_Count Mod 6000) \ 100
  54.     lminsec = Time_Count Mod 100
  55.     lblTimer.Caption = Format(lMin, "00") & ":" & Format(lSec, "00") & "." & Format(lminsec, "00")
  56.     Scores = lblTimer.Caption
  57. End If
  58. End Sub
  59. Private Sub Timer2_Timer()

  60. Backcounter = Backcounter - 1
  61. lblBackcounter.Caption = Backcounter
  62. If Backcounter < 0 Then
  63.     lblBackcounter.Caption = ""
  64.    
  65.     lblBackcounter.Enabled = False
  66.    
  67.     Timer2.Enabled = False
  68.    
  69.    
  70. End If
  71. End Sub
  72. Sub Swap() 'doing sWap in the RAM
  73. Dim loc1, loc2, counta, temp As Integer

  74. For counta = 1 To 500
  75. loc1 = Int(Rnd * 25) + 1
  76. loc2 = Int(Rnd * 25) + 1
  77. temp = Buttons(loc1)
  78. Buttons(loc1) = Buttons(loc2)
  79. Buttons(loc2) = temp
  80. Next
  81. End Sub
複製代碼


我的想法就是 讓程式在 記憶體 作交換位子的是
然後再打她叫出還用
可是好像沒有換位子
  1. Sub Swap() 'doing sWap in the RAM
  2. Dim loc1, loc2, counta, temp As Integer

  3. For counta = 1 To 500
  4. loc1 = Int(Rnd * 25) + 1
  5. loc2 = Int(Rnd * 25) + 1
  6. temp = Buttons(loc1)
  7. Buttons(loc1) = Buttons(loc2)
  8. Buttons(loc2) = temp
  9. Next
  10. End Sub

  11. Call Swap
  12. For counta = 1 To 25

  13. Buttons(counta) = counta

  14. Next
  15. For counta = 1 To 25
  16. lblButtons(counta).Caption = Buttons(counta)

  17. Next
複製代碼


上面是我做交換的code 讓他在記憶體 換500次位子
但是出來還是沒用 = =
那數字是 lblButtons(1) 到 lblButtons(25)

還有
  1. Private Sub lblButtons_Click(Index As Integer)
  2. If counta = numbercounter Then
  3. numbercounter = numbercounter + 1

  4. Else: missed = missed + 1 ' update the worry clcik
  5. End If
  6. If numbercounter = 26 Then 'finished 25 number
  7. Game_Start = False

  8. frmEnterName.Show 'call out the Name from


  9. End If
  10. End Sub
複製代碼

這我想寫說 當遊戲開始  然後 當 lblNumber = 被點到的 lblButtons 數字
numbercounter會+1
然後 numbercounter = 26 就是說 25個數字都點對了 所以就結束
當 lblNumber <> 被點到的 lblButtons 數字
missed 會 +1
然後 lblmissednumber.caption = missed

最後我想多加 當
  1. Game_Start = False
  2. frmEnterName.Show 'call out the Name from
複製代碼

可以順便 紀錄所花的時間 就是 Scores = lblTimer.Caption

當遊戲結束 我的 紀錄名子的Form 就會出來
但是 有人可以教我一下 排名的方法 (氣泡排序法)
我會紀錄 時間 名子 然後Time_Count 用最少的是第一名
然後 排名只會Show 名次 名子 時間 不要把 Time_Count show 出來

排名的程式 我都找不到例子 練習所以不會寫

雖然有很多問題 但是希望 可以把這小遊戲 做完美一點 ^.^  謝謝...
瀏覽完整內容,請先 註冊登入會員
附件: 你需要登錄才可以下載或查看附件。沒有帳號?註冊
分享分享0收藏收藏0支持支持1
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。

使用道具檢舉

Rank: 4Rank: 4Rank: 4Rank: 4

帖子
595
積分
6631 點
潛水值
21388 米
頭香
發表於 2011-5-28 10:55 PM|只看該作者
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。
本帖最後由 gogopkman 於 2011-5-28 11:23 PM 編輯

方便上傳整個專案嗎?
Swap 沒作用的原因,應該是因為
  1. Call Swap
複製代碼
放在
  1. For counta = 1 To 25
  2.    
  3.     Buttons(counta) = counta
  4.    
  5. Next
複製代碼
之前的關係,因為呼叫 Swap 時,Buttons 的值都還沒初始化,

程式怎麼換都是 0 這個值再換,依需求調整呼叫 Swap 的時機看看。
依你的思路來看,程式碼應該改成:

  1. For counta = 1 To 25
  2.    
  3.     Buttons(counta) = counta
  4.    
  5. Next
  6. Call Swap
  7. For counta = 1 To 25
  8.     lblButtons(counta).Caption = Buttons(counta)
  9.    
  10. Next
複製代碼



這樣按鈕的數字就會變動了。...
瀏覽完整內容,請先 註冊登入會員
人生如火車,有人上車;有人下車。

十年生死兩茫茫,不思量,自難忘。
千里孤墳,無處話淒涼。
縱使相逢應不識,塵滿面,鬢如霜。

使用道具檢舉

冬梅秋菊 該用戶已被刪除
3
發表於 2011-5-29 10:46 AM|只看該作者
分享使你變得更實在,可以使其他人感到快樂,分享是我們的動力。今天就來分享你的資訊、圖片或檔案吧。
謝謝你的回答  現在數字可以換了

但是
  1. Private Sub lblButtons_Click(Index As Integer)

  2. If counta = numbercounter Then

  3. numbercounter = numbercounter + 1



  4. Else: missed = missed + 1 ' update the worry clcik

  5. End If

  6. If numbercounter = 26 Then 'finished 25 number

  7. Game_Start = False



  8. frmEnterName.Show 'call out the Name from





  9. End If

  10. End Sub
複製代碼
我想做成點 一樣的數字 lblNumber 就會+ 1
點錯 lblmissednumber就會+1
可是我寫的 我點到一樣數字 或錯的 都沒動
可以看看一下嗎??...
瀏覽完整內容,請先 註冊登入會員
若瀏覽伊莉的時侯發生問題或不正常情況,請使用Internet Explorer(I.E)。

使用道具檢舉

冬梅秋菊 該用戶已被刪除
4
發表於 2011-5-29 10:50 AM|只看該作者
成為伊莉的版主,你將獲得更高級和無限的權限。把你感興趣的版面一步步地發展和豐盛,那種滿足感等著你來嚐嚐喔。
我現在把 counta改成Buttons(counta)
但是有bug= = 還是無法加上去
若有安裝色情守門員,可用無界、自由門等軟件瀏覽伊莉。或使用以下網址瀏覽伊莉: http://www.eyny.com:81/index.php

使用道具檢舉

Rank: 4Rank: 4Rank: 4Rank: 4

帖子
595
積分
6631 點
潛水值
21388 米
5
發表於 2011-5-30 06:40 AM|只看該作者
若有安裝色情守門員,可用無界、自由門等軟件瀏覽伊莉。或使用以下網址瀏覽伊莉: http://www.eyny.com:81/index.php
我現在把 counta改成Buttons(counta)
但是有bug= = 還是無法加上去
冬梅秋菊 發表於 2011-5-29 10:50 AM
下載: 訪客無法瀏覽下載點,請先 註冊登入會員


依你本來的程式碼來看,疑似有以下問題:
...
瀏覽完整內容,請先 註冊登入會員





分享使你變得更實在,可以使其他人感到快樂,分享是我們的動力。今天就來分享你的資訊、圖片或檔案吧。

使用道具檢舉

您需要登錄後才可以回帖 登錄 | 註冊

Powered by Discuz!

© Comsenz Inc.

重要聲明:本討論區是以即時上載留言的方式運作,對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本討論區受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。切勿上傳和撰寫 侵犯版權(未經授權)、粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。
回頂部