Lousada SCP Ответов: 1

Ошибка: system.argumentoutofrangeexception в C#


- Привет! Я пытаюсь сделать простую игру, в которой я стреляю в объект, на языке C#.
Когда я пытаюсь сделать их положение случайным, это ошибка, которую я получаю:

System.ArgumentOutOfRangeException: ''minValue' cannot be greater than 'maxvalue'



Here's the piece of code where the problem is:

private void timerGameLoop_Tick(object sender, EventArgs e)
        {
            UpdateVar();
            this.Refresh();
        }
        private void UpdateVar()
            
        {
            
            cVarandas.Update(
           rnd.Next(Resources.vhappy.Width, this.Width - Resources.vhappy.Width), 
           rnd.Next(this.Height/2 , this.Height - Resources.vhappy.Height * 2)
                  );
        }

Please help!

What I have tried:

I honestly don't know what to do here

1 Ответов

Рейтинг:
11

OriginalGriff

Прочтите сообщение об ошибке, оно не может быть более ясным:

System.ArgumentOutOfRangeException: ''minValue' cannot be greater than 'maxvalue'
Версия случайная.Далее вы вызываете принимает два параметра: Случайный.Следующий Метод (Система) | Microsoft Docs[^] первое-это минимальное значение, а второе - максимальное.
Ошибка заключается в том, что минимальное значение больше максимального, а это значит, что он вообще не может возвращать никаких значений!

Поменяй их местами, так что самый маленький будет первым ... или используйте отладчик, чтобы выяснить, почему они таковы.


Lousada SCP

Большое вам спасибо, это сработало. Но теперь у меня есть еще один вопрос, не могли бы вы помочь мне еще раз? Я тоже разместил его здесь