Я хотел бы одновременно отображать четыре изображения и при загрузке формы изображения переключаться местами. В настоящее время изображения будут отображаться в разных номерах, например: появится 1 изображение или 2 изображения и т. Д. 4. Я также хочу убедиться, что дубликаты не появятся.Цикл нескольких изображений через несколько картинных ящиков
код из Form1_Load:
PictureBox[] boxes = new PictureBox[4];
boxes[0] = pictureBox0;
boxes[1] = pictureBox1;
boxes[2] = pictureBox2;
boxes[3] = pictureBox3;
for (int i = 0; i < boxes.Length; i++)
{
int switcher = r.Next(0, 5);
switch (switcher)
{
case 0:
{ boxes[i].Image = Properties.Resources.dog0; } break;
case 1:
{ boxes[i].Image = Properties.Resources.dog1; } break;
case 2:
{ boxes[i].Image = Properties.Resources.dog2; } break;
case 3:
{ boxes[i].Image = Properties.Resources.dog3; } break;
}
}
Два примера, приведенные выше, как к тому, что в настоящее время происходит.
Update - Работа
Теперь программа перемещает изображения вокруг по нагрузке и нет никаких дубликатов :)
List<Bitmap> resources = new List<Bitmap>();
resources.Add(Properties.Resources.dog0);
resources.Add(Properties.Resources.dog1);
resources.Add(Properties.Resources.dog2);
resources.Add(Properties.Resources.dog3);
resources = resources.OrderBy(a => Guid.NewGuid()).ToList();
for (int i = 0; i < resources.Count; i++)
{
pictureBox0.Image = resources[0];
pictureBox1.Image = resources[1];
pictureBox2.Image = resources[2];
pictureBox3.Image = resources[3];
}
Два приведенный выше пример, показывающий, что происходит сейчас что он работает.
создать массив изображений и перемешайте его. итерации через этот массив. http://stackoverflow.com/a/26931594/4767498 –
проверьте еще один [ответ] (http://stackoverflow.com/a/39310462/6290553) :) –
Цикл for в вашем обновлении абсолютно не нужен. Он просто указывает один и тот же ресурс на изображение четыре раза. –