【发布时间】:2015-01-18 00:59:29
【问题描述】:
我有 5 个图片框,我想在单击每个图片框时更改图像。 例如,如果pictureBox1上显示的图像是“_1”,当我单击它时,图像应该变为“_1x”,反之亦然。我的 if 子句中的代码永远不会被执行,我不知道为什么。
这是我的代码:
private void Form1_Load(object sender, EventArgs e)
{
pb1.Image = Properties.Resources._1;
pb2.Image = Properties.Resources._2;
pb3.Image = Properties.Resources._3;
pb4.Image = Properties.Resources._4;
pb5.Image = Properties.Resources._10;
}
private void pb1_Click(object sender, EventArgs e)
{
if (pb1.Image == Properties.Resources._1)
{
pb1.Image = Properties.Resources._1x;
}
else { pb1.Image = Properties.Resources._1; }
}
【问题讨论】:
-
您需要找到一种方法来跟踪分配的图像,可能使用 .Tag 属性。
pb1.Image == Properties.Resources._1不会进行图像比较;它将测试它们是否是同一个对象。 -
谢谢。用 Tag 试了一下,效果很好。
标签: c# winforms picturebox