2014-04-17 38 views
0

所以基本上標題是這麼說的。我想製作一個程序,在其中點擊一個按鈕,然後出現另一個按鈕,然後如果您在某個時間點擊下一個按鈕,您會得到一個點。 這是我在另一個線程中發現的,但這也使得在第二個按鈕顯示之前計時器倒計時,即使此代碼是在代碼顯示下一個按鈕之後。如果在Visual Basic中點擊另一個按鈕後點擊一個按鈕,我該如何執行一段代碼

Do While DoWhileBool = True 
    Select Case DirectCast(Sender, Button).Name 
    Case "ClickHere2" 
     If TimeCount > 0 Then 
      MultCount += 1 
     End If 

    Case "ClickHere3" 
     If TimeCount > 0 Then 
      MultCount += 1 
     End If 

這是不以任何方式的全部代碼,但我只是想展示一下我試過,不適合在裏面另一個按鈕點擊方法的if語句有一個按鈕單擊事件工作。

編輯:我結束了部分,但幾乎所有的想出來什麼,我是問感謝答案的幫助:

NumButTim.Stop() 
If TimerVar <> 0 Then 
    MultCount += 1 
    MultCounter.Text = MultCount 
    MultCounter.Refresh() 
End If 
NumButTim.Start() 
TimerVar = 5 
'Do Until TimerVar = 0 
' TimerVar = Timer1.ToString 
' TimeCounter.Text = Timer1.ToString 
' TimeCounter.Refresh() 
'Loop 

末次

的註釋部分,是我在哪裏試圖讓文本框顯示倒計時時間,但它不起作用。如果我願意,我確信我可以弄明白,但我已經轉向其他事情。感謝回答的人,他可能會讓我得到正確的答案。

回答

0

從我瞭解你的問題,這是我應該怎樣做:

添加一個計時器,和2個按鈕的形式

在窗體加載,你要設置的時間間隔計時器,所以是這樣的:

Timer1.Interval = 1000  'Set the interval to 1 second 

然後當你點擊第一個按鈕顯示第二個按鈕,等等Button1的Click:

Button2.show()    'Show the second button 
Timer1.Start()    'Start the timer, so they have 1 second from now 

而在按鈕2點擊,你想要做你的事件,加點等:時間certian量之後

points += 1 

然後讓第二個按鈕dissapear,(超時),您更改時間間隔的計時器1。如果按鈕要顯示1秒,間隔設置爲1000(毫秒)

然後在timer1.tick添加以下代碼:

timer1.Stop()    'Stop the timer so that its not ran again and again 
Button2.Hide()    'Hide the second button 
MsgBox("You was too slow!!") 'Tell the user they missed it, or your code.. 
+0

我怎麼會做一個計時器?我這樣做的方式是讓timecount變量在每次執行while循環時遞增1。我得到你所說的將增量放在第二個按鈕中,但我不確定Timer1是否應該是一個變量或其他東西? – Jyreeil

+0

Timer1將是一個計時器對象,從設計視圖中的工具箱中添加(我假設您正在使用設計視圖,並且不是在代碼中動態創建所有對象?) –

+0

是的,我正在使用表單項目,並且使用設計視圖在程序中獲取我的所有對象。謝謝,我會嘗試你在這裏所說的話,然後回來說出它是否奏效。 – Jyreeil

相關問題