每次单击按钮时显示不同的图像

本文关键字:图像 显示 单击 按钮 | 更新日期: 2023-09-27 18:16:26

我试图使一个按钮,将显示一个不同的图像每次点击它在c#中的整数增量

c#

private void button1_Click(object sender, EventArgs e)
 {
  int a = 0;
    a++;
    if (a == 1)
    {
        pictureBox1.ImageLocation = "http://s20.postimg.org/uazs6u2p9/99639488.png";
    }
    else if (a == 2)
    {
        pictureBox2.ImageLocation = "http://s20.postimg.org/cdopdvz8t/99639514.png";
    }
}

每次单击按钮时显示不同的图像

您已经在方法内部声明了int a,因此每次单击按钮时都会创建一个值为0的新int。你总是把0增加到1。

int a声明为一个字段。还要设置一个默认条件,以便在计数器达到最大可用情况时重置计数器。

private int a = 0;
private void button1_Click(object sender, EventArgs e)
{
    a++;
    switch(a)
    { 
        case 1: pictureBox1.ImageLocation = "http://s20.postimg.org/uazs6u2p9/99639488.png";
                break;
        case 2: pictureBox2.ImageLocation = "http://s20.postimg.org/cdopdvz8t/99639514.png";
                break;
        // put more cases here
        default: a = 0; // reset counter
                 break;
    }
}

还有另一种方法,而不是使用int和顺序显示图像,您可以使用随机int和随机化图像。

private Random r = new Random();
private void button1_Click(object sender, EventArgs e)
{
    switch(r.Next(1,2))
    { 
        case 1: pictureBox1.ImageLocation = "http://s20.postimg.org/uazs6u2p9/99639488.png";
                break;
        case 2: pictureBox2.ImageLocation = "http://s20.postimg.org/cdopdvz8t/99639514.png";
                break;
        // put more cases here
    }
}

r.Next(x,y)只是产生x和y之间的随机数,所以如果你有10种情况,你必须执行r.Next(1,10)。如果你有6个案例,使用r.Next(1,6)等等