2016-11-14 6 views
0

Я пытаюсь сравнить 3 изображения для игрового автомата, проблема в том, что я не получаю никаких ошибок, но изображения, похоже, не сравниваются ни с чем. У меня есть изображения в списке изображений, и они в настоящее время выбраны случайным, но когда imagebox1 является вишня bettextbox обыкновению = WinnerC# Как сравнивать изображения с операторами if

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 

    Bitmap apple = Properties.Resources.Apple; 
    Bitmap cherries = Properties.Resources.Cherries; 
    Bitmap orange = Properties.Resources.Orange; 

    private void spinButton_Click(object sender, EventArgs e) 
    { 
     Random rand = new Random(); 
     int pic = rand.Next(0, images.Images.Count); 
     int pic2 = rand.Next(0, images.Images.Count); 
     int pic3 = rand.Next(0, images.Images.Count); 

     pictureBox1.Image = images.Images[(pic)]; 
     pictureBox2.Image = images.Images[(pic2)]; 
     pictureBox3.Image = images.Images[(pic3)]; 

     if (pictureBox1.Image == cherries) 
     { 
      betTextBox.Text = "Winner"; 
     } 

ответ

0

я бы пари, что массив изображений в элементе управления ImageList не является ссылка на исходный объект , поэтому сравнение с == не будет работать (хотя сами изображения одинаковы, объект, содержащий изображение, не является той же ссылкой).

Вы можете вместо этого использовать индекс массива для выражения if.

int cherriesIndex=1; 

private void spinButton_Click(object sender, EventArgs e) 
{ 
    Random rand = new Random(); 
    int pic = rand.Next(0, images.Images.Count); 
    int pic2 = rand.Next(0, images.Images.Count); 
    int pic3 = rand.Next(0, images.Images.Count); 

    pictureBox1.Image = images.Images[(pic)]; 
    pictureBox2.Image = images.Images[(pic2)]; 
    pictureBox3.Image = images.Images[(pic3)]; 

    if (pic == cherriesIndex) 
    { 
     betTextBox.Text = "Winner"; 
    }` 

Это предполагает, что вишня является элементом 1 в изображениях. Изображения. Я имею в виду это для иллюстрации в основном.

+0

Это, казалось, сделало это для меня, теперь я могу работать над утверждениями if, чтобы получить разные условия выигрыша, спасибо вам большое! – Sovias

Смежные вопросы