2015-07-26 2 views
1

У меня 2 изображения, используя метод else-if, как это сделать, чтобы при щелчке по изображению A оно превратилось в изображение B, и если его изображение B , вернитесь к изображению A? Вот мои коды:Как сменить одно изображение на другое, нажав на кнопку

private void Smalltubbutton1_Click(object sender, EventArgs e) 
{ 
    if(System.Drawing.Bitmap bitmap1 = 
     WindowsFormsApplication21.Properties.Resources.smalltub) 
    { 
     System.Drawing.Bitmap bitmap1 = 
         WindowsFormsApplication21.Properties.Resources.GRAYSCALEsmalltub; 
    } 
    else 
    { 
    System.Drawing.Bitmap bitmap1 = 
        WindowsFormsApplication21.Properties.Resources.smalltub  
    } 
} 
+0

Этот вопрос слишком прост. Найдите рабочий пример (я полагаю, WinForms?) И попробуйте сначала. B.t.w, оператор if имеет оператор присваивания (=); это должно быть «==». –

+1

Посмотрите на [этот] (http://stackoverflow.com/q/10468284/1648849) вопрос с аналогичной проблемой. –

+0

вы должны играть с видимым свойством. –

ответ

1

Вы можете использовать PictureBox и изменить свойство изображения с помощью правильного изображения и изменить логическое свойство или переменный каждый раз вы нажимаете на это.

private void pictureBox1_Click(object sender, EventArgs e) 
{ 
     if (flag) 
      pictureBox1.Image = WindowsFormsApplication21.Properties.Resources.GRAYSCALEsmalltub; 
     else 
      pictureBox1.Image = WindowsFormsApplication21.Properties.Resources.smalltub; 
     flag=!flag; 
} 

Надеюсь, это решит вашу проблему. Удачи.

+0

Большое вам спасибо. –

+0

ваш приветственный приятель. –

1

Вы можете сделать это как-нибудь так:

private bool flag; 
private void Smalltubbutton1_Click(object sender, EventArgs e) 
{ 
    System.Drawing.Bitmap bitmap1; 

    if (flag) 
    { 
     bitmap1 = WindowsFormsApplication21.Properties.Resources.GRAYSCALEsmalltub; 
    } 
    else 
    { 
     bitmap1 = WindowsFormsApplication21.Properties.Resources.smalltub  
    } 

    flag = !flag; 
} 
+0

Это не работает, когда я нажимаю кнопку, ничего не меняется, я копировал то же самое, что и вы. –

+0

@ LokeBoon вы должны не только копировать мой ответ, не просматривая его вообще. Основная идея заключалась в том, чтобы использовать флаг для сохранения состояния. –

+0

извините, но я довольно новичок в программировании, поэтому я понятия не имею, какой флаг или состояние. Я просмотрел и попробовал другие альтернативы, но безрезультатно .. –

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