2016-01-27 2 views
0

Я изучаю форму приложения Windows в Visual Studio, я делаю ряд игр с угадыванием, в которых программа генерирует случайное число. Я положил генератор случайных чисел внутри метода Button_Click, я хочу, чтобы число говорило то же самое, когда программа запускалась, но она менялась каждый раз, когда я нажимаю кнопку.Как сделать переменные экземпляра внутри класса

public partial class myWindow : Form 
{ 


    public myWindow() 
    { 
     InitializeComponent(); 
    } 

    private void guessButton_Click(object sender, EventArgs e) 
    { 

      Random random = new Random(); 
      int roll = random.Next(0, 99); 

Где я должен объявить или поставить генератор случайных чисел и переменную, чтобы он не изменился?

+0

Try 'Случайные случайный = новый Random (1);' –

+0

@YacoubMassad Хорошо для угадайку вы можете запустить один раз. :) – itsme86

+0

Если второй щелчок на кнопке всегда показывает тот же номер? И третий ...? –

ответ

2

Сделать это член класса:

public partial class myWindow : Form 
{ 
    private int _roll; 
    private int _numGuesses; 

    public Window() 
    { 
     InitializeComponent(); 

     Random random = new Random(); 
     _roll = random.Next(0, 99); 
    } 

    private void guessButton_Click(object sender, EventArgs e) 
    { 
     bool isGuessCorrect = // Set this however you need to 

     if (isGuessCorrect) 
     { 
      // They got it right! 
     } 
     else 
     { 
      _numGuesses++; 
      if (_numGuesses > 9) 
      { 
       // Tell them they failed 
      } 
      else 
      { 
       // Tell them they're wrong, but have 10 - _numGuesses guesses left 
      } 
     } 
    } 
} 
+0

Это сработало, спасибо вам большое. –

+0

Надеюсь, я вас не сильно беспокою, но я хочу, чтобы у игрока было 10 шансов угадать правильное число. Я знаю, что мне нужно поставить цикл for, но снова я не знаю, что положить цикл. –

+0

Вам также нужно будет отслеживать количество предположений. Я уточню свой ответ, чтобы показать, что я имею в виду. – itsme86