实现:点击一个picturebox ,用另一个image替换原来picturebox 的image(原来是2.jpg),表明我选中private void c_Click_01(object sender, System.EventArgs e)
{
PictureBox p = sender as PictureBox;
p.Image =Image.FromFile (Application.StartupPath +@"\背景\1.jpg");
}
现在我点击另一个picturebox ,image也照样替换,但是要恢复上一个picturebox 的image为(2.jpg)
如此下去..是不是应该定义一个变量记录Click事件呢,思路,谢谢!可能有更简单的方法注:所有picturebox 都是动态生成的,所有Click事件也都是动态绑定的
{
PictureBox p = sender as PictureBox;
p.Image =Image.FromFile (Application.StartupPath +@"\背景\1.jpg");
}
现在我点击另一个picturebox ,image也照样替换,但是要恢复上一个picturebox 的image为(2.jpg)
如此下去..是不是应该定义一个变量记录Click事件呢,思路,谢谢!可能有更简单的方法注:所有picturebox 都是动态生成的,所有Click事件也都是动态绑定的
NO,有多个PictureBox ,按照位置我一一对应绑定事件,每一个PictureBox 都有一个绑定事件,为了显示不同的变色效果
private void Form1_Load(object sender, EventArgs e)
{
backimg = new Bitmap(Application.StartupPath +@"\背景\1.jpg");
} private void pictureBox_Click(object sender, EventArgs e)
{
Image m = ((PictureBox)sender).Image;
((PictureBox)sender).Image = backimg;
backimg = m;
}
public void SelectCoil(int pos)
{
if(pos==1)
{
c.Click +=new System.EventHandler(c_Click_01);
}
if(pos==2)
{
c.Click +=new System.EventHandler(c_Click_02);
}
if(pos==3)
{
c.Click +=new System.EventHandler(c_Click_03);
}
if(pos==4)
{
c.Click +=new System.EventHandler(c_Click_04);
}
if(pos>5)
{
c.Click +=new System.EventHandler(c_Click_05);
}
}private void c_Click_01(object sender, System.EventArgs e)
{
PictureBox p = sender as PictureBox;
p.Image =Image.FromFile (Application.StartupPath +@"\背景\1.jpg");
}
private void c_Click_02(object sender, System.EventArgs e)
{
PictureBox p = sender as PictureBox;
p.Image =Image.FromFile (Application.StartupPath +@"\背景\3.jpg");
}
private void c_Click_03(object sender, System.EventArgs e)
{
PictureBox p = sender as PictureBox;
p.Image =Image.FromFile (Application.StartupPath +@"\背景\4.jpg");
}
.
.
.
.
p.Image =Image.FromFile (Application.StartupPath +@"\背景\1.jpg");
p.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));//在设计器里面为p添加image.