Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

массив picturebox'ов С#

34K
08 декабря 2010 года
Dinar1623
57 / / 14.11.2010
Здравствуйте. Помогите плиз написать массив, который каждый раз меняет расположение pictureBoxа на форме.
297
08 декабря 2010 года
koodeer
1.2K / / 02.05.2009
Массив хранит данные, он ничего не меняет. О чём речь?
34K
08 декабря 2010 года
Dinar1623
57 / / 14.11.2010
Извиняюсь, я имел ввиду счетчик случайных чисел:Randomize.
Код:
private void timer1_Tick(object sender, EventArgs e)
        {
             Random rnd = new Random();
             pictureBox1.Top += (pictureBox1.Height / 2);//Задаем движение препятствия
if (pictureBox1.Top + pictureBox1.Height >= this.Height) //Дошло ли препятствие до нижней границы
            {
                pictureBox1.Visible = false;
                pictureBox1.Top = 1;
                //Препятствие не должно выходить за левую или правую границу
                do
                    pictureBox1.Left = rnd.Next(450 - Car.Width);
                while (pictureBox1.Left > 10);
                pictureBox1.Visible = true;
                    }

В таком варианте pictureBox1 ,после того как прошел до конца формы, появляется а правом верхнем углу. И больше своё расположение не меняет((.А надо, что бы он появлялся каждый раз в новой части формы.
297
08 декабря 2010 года
koodeer
1.2K / / 02.05.2009
Что такое Car? Что означает число 450?

Цикл do - while не нужен.

Примерно так:
 
Код:
pictureBox1.Left = rnd.Next(this.Width - pictureBox1.Width);


Генератор случайных чисел rnd лучше сделать полем класса. Незачем создавать новый объект каждый раз при тике таймера: это лишняя нагрузка на систему. И сборщик мусора лишний раз заставляем трудиться.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог