Random out image for picture box c#

前端 未结 2 1631
感动是毒
感动是毒 2021-01-14 23:55

I\'m working on a Winform where I have this picture box. I have 52 different images and only 1 image is going to be shown in this particular picture box. I\'m not really sur

2条回答
  •  小鲜肉
    小鲜肉 (楼主)
    2021-01-15 00:39

    The first step would be to make a list of some sort to store all your images. You can either opt for a list of Images, or a list of their paths.

    If you're using the Image route, you can create a list of images with List images = new List(); and add each image to it with images.Add(image); for each image.

    If you're using the path route, you can create a list of paths with List paths = new List(); and add each image to it with paths.Add(path); for each path.

    Then, when you're setting the picture box to a random image, you can generate a random number and pick one out of the list.

    For Images:

    Random random = new Random();
    pictureBox1.Image = images[random.Next(0, images.Count - 1)];
    

    For paths:

    Random random = new Random();
    pictureBox1.ImageLocation = paths[random.Next(0, images.Count - 1)];
    

    As Tuukka says, using paths is a much better idea (memory usage-wise), unless you've created the images dynamically, or already have the images for some other reason.

提交回复
热议问题