Я пытаюсь получить генератор случайных изображений для карты. Я пытаюсь использовать массив для создания пяти разных изображений для 5 ящиков. В настоящее время я использую операторы if, но хочу использовать массивы. Это мой код до сих пор,Как создать случайные изображения в массиве
Dim rndnumber As Integer
Randomize()
rndnumber = Int(Rnd() * 52) + 1
If ListBox1.Items.Contains(rndnumber) Then
rndnumber = Int(Rnd() * 52) + 1
End If
ListBox1.Items.Add(rndnumber)
If rndnumber = 1 Then
Me.playerhand1.Image = My.Resources.aceclubs
ElseIf rndnumber = 2 Then
Me.playerhand1.Image = My.Resources.acediamonds
ElseIf rndnumber = 3 Then
Me.playerhand1.Image = My.Resources.acehearts
ElseIf rndnumber = 4 Then
Me.playerhand1.Image = My.Resources.acespades
ElseIf rndnumber = 5 Then
Me.playerhand1.Image = My.Resources._2clubs
ElseIf rndnumber = 6 Then
Me.playerhand1.Image = My.Resources._2diamonds
ElseIf rndnumber = 7 Then
Me.playerhand1.Image = My.Resources._2hearts
ElseIf rndnumber = 8 Then
Me.playerhand1.Image = My.Resources._2spades
ElseIf rndnumber = 9 Then
Me.playerhand1.Image = My.Resources._3clubs
ElseIf rndnumber = 10 Then
Me.playerhand1.Image = My.Resources._3diamonds
ElseIf rndnumber = 11 Then
Me.playerhand1.Image = My.Resources._3hearts
ElseIf rndnumber = 12 Then
Me.playerhand1.Image = My.Resources._3spades
ElseIf rndnumber = 13 Then
Me.playerhand1.Image = My.Resources._4clubs
ElseIf rndnumber = 14 Then
Me.playerhand1.Image = My.Resources._4diamonds
ElseIf rndnumber = 15 Then
Me.playerhand1.Image = My.Resources._4hearts
ElseIf rndnumber = 16 Then
Me.playerhand1.Image = My.Resources._4spades
ElseIf rndnumber = 17 Then
Me.playerhand1.Image = My.Resources._5clubs
ElseIf rndnumber = 18 Then
Me.playerhand1.Image = My.Resources._5diamonds
ElseIf rndnumber = 19 Then
Me.playerhand1.Image = My.Resources._5hearts
ElseIf rndnumber = 20 Then
Me.playerhand1.Image = My.Resources._5spades
End If
End Sub
Какой проблемы вы сталкиваетесь, когда вы делаете это? И это, как вы заметили, гораздо лучше использовать массив или словарь, чтобы избавиться от ваших множественных операторов if-else – Ian
, проблема в том, что мне бы хотелось, чтобы в 5 разных картинных ящиках появилось другое изображение. пока что весь этот код предназначен только для одного окна. –
[Этот ответ] (http://stackoverflow.com/a/26532939/1070452) может представлять интерес, поскольку было бы легче читать изображения из ImageList, которые вы могли бы ссылаться на них с помощью ключа, созданного из костюма, и ранга – Plutonix