2015-01-10 77 views
0

我想獲得一個隨機數倒數到零,但我一直給我一個隨機數。然後每秒鐘它會生成一個4到11之間的新隨機數,並且不會倒數。如果任何人都可以幫助它將不勝感激。提前致謝!
進入這裏如何獲得一個隨機數來倒數

  private void timer1_Tick(object sender, EventArgs e) 
    { 

     Random nuber = new Random(); 
     i = nuber.Next(4, 11); 
     i--; 

     textBox1.Text = i.ToString(); 

     if(i == 0) 
     { 
      Form1 f1 = new Form1(); 
      Form2 f2 = new Form2(); 

      f2.Show(); 
      f1.Close(); 
     } 

    } 
+1

你需要降低種子,如果你想要一個較低的數字,似乎並不明顯? – Sievajet

+0

這並不是我所問的,但是,這似乎並不明顯? – SwolleyMammmoth

+0

當問這樣一個微不足道的問題時,不要諷刺那些試圖幫助你的人。您需要向我們展示更多代碼 – LukeP

回答

0

代碼如果我明白你正在嘗試做的,那麼你需要生成的循環之外的數量,在初始化階段,在靜態(全局)變量。然後計時器滴答會將其計數。注意你的f1被創建並關閉,它從不顯示,所以是多餘的。此外,您每次都創建一個新表單,這可能不是您想要的。

基本上你需要正義之舉的兩個語句:

random nuber = new Random(); 
i = number.next(); 

到哪裏它是您創建的計時器。

+0

我會試試看。遊戲在Form1上,然後當計時器歸零時,它將打開Form2,這是我製作的遊戲的主菜單。但是,Form1由於某種原因未關閉,Form2打開,然後Form1剛剛位於後面。這是你創建一個新表單的含義嗎? – SwolleyMammmoth

+0

我需要查看更多代碼才能理解正在發生的事情,也許我的表單註釋並不相關。但是如果你想讓隨機數倒數,你需要將它分配到循環之外,就像創建計時器一樣,並將它存儲在初始化代碼和倒計時代碼可以達到的地方。並且請接受我的回答,我需要點數:) –

+0

此外,關於種子的言論沒什麼意義,因爲種子與隨機數生成器實際生成的值的範圍無關。 –

相關問題