发布网友 发布时间:2022-05-03 10:34
共3个回答
热心网友 时间:2023-10-21 00:48
1 将两个图像加入到项目资源中
2 设置一个bool 值开关
3 点击按钮时切换开关,然后根据开关为按钮设置不同的图像资源文件
代码如下所示:
追答
两次点击才切换的话,是不是因为你有多个按钮,但是你只用了一个bool的切换开关。这个必须一个按钮一个开关的。当然你可以将bool 调到按钮的tag中,你可以看我后面的示例代码
如果需要图像随按钮调整的话,那需要将图像设置为按钮的BackgroundImage,并设置按钮的BackgroundImageLayout为ImageLayout.Stretch,你可以看我后面的示例代码。
热心网友 时间:2023-10-21 00:48
能用到的代码楼上都给了,思路可以更简单一些。热心网友 时间:2023-10-21 00:49
把图片转换为BYTE数组保存到按钮的TAG中去,点击的时候把当前的按钮图片保存到1个BYTE数组变量 我命名为PicA,再按钮TAG中保存的图片取去设置为当前的按钮图片,然后把PicA保存到按钮的TAG属性中,这样就可以实现了.追答长度有*,我吧图片转换函数发你百度HI里面吧
private void button1_Click(object sender, EventArgs e)
{
Image a = this.button1.Image;
this.button1.Image = this.button1.Tag as Image;
this.button1.Tag = a;
}
private void Form1_Load(object sender, EventArgs e)
{
//给按钮设置背景图片
string ImagePath = @"G:\Users\Administrator\Pictures\未命名.jpg";
string ImagePath2 = @"G:\Users\Administrator\Pictures\未命名2.jpg";
//吧指定路径的图片转为数组
byte[] PicA= imageToByteArray(ImagePath);
//吧数组转换为IMAGE对象
Image a = byteArrayToImage(PicA);
this.button1.Image=a;
//吧指定路径的图片转为数组
byte[] PicB = imageToByteArray(ImagePath2);
//吧数组转换为IMAGE对象
Image b = byteArrayToImage(PicB);
this.button1.Tag = b;
}
}
}
热心网友 时间:2023-10-21 00:48
1 将两个图像加入到项目资源中
2 设置一个bool 值开关
3 点击按钮时切换开关,然后根据开关为按钮设置不同的图像资源文件
代码如下所示:
追答
两次点击才切换的话,是不是因为你有多个按钮,但是你只用了一个bool的切换开关。这个必须一个按钮一个开关的。当然你可以将bool 调到按钮的tag中,你可以看我后面的示例代码
如果需要图像随按钮调整的话,那需要将图像设置为按钮的BackgroundImage,并设置按钮的BackgroundImageLayout为ImageLayout.Stretch,你可以看我后面的示例代码。
热心网友 时间:2023-10-21 00:48
能用到的代码楼上都给了,思路可以更简单一些。热心网友 时间:2023-10-21 00:49
把图片转换为BYTE数组保存到按钮的TAG中去,点击的时候把当前的按钮图片保存到1个BYTE数组变量 我命名为PicA,再按钮TAG中保存的图片取去设置为当前的按钮图片,然后把PicA保存到按钮的TAG属性中,这样就可以实现了.追答长度有*,我吧图片转换函数发你百度HI里面吧
private void button1_Click(object sender, EventArgs e)
{
Image a = this.button1.Image;
this.button1.Image = this.button1.Tag as Image;
this.button1.Tag = a;
}
private void Form1_Load(object sender, EventArgs e)
{
//给按钮设置背景图片
string ImagePath = @"G:\Users\Administrator\Pictures\未命名.jpg";
string ImagePath2 = @"G:\Users\Administrator\Pictures\未命名2.jpg";
//吧指定路径的图片转为数组
byte[] PicA= imageToByteArray(ImagePath);
//吧数组转换为IMAGE对象
Image a = byteArrayToImage(PicA);
this.button1.Image=a;
//吧指定路径的图片转为数组
byte[] PicB = imageToByteArray(ImagePath2);
//吧数组转换为IMAGE对象
Image b = byteArrayToImage(PicB);
this.button1.Tag = b;
}
}
}
热心网友 时间:2023-10-21 00:48
1 将两个图像加入到项目资源中
2 设置一个bool 值开关
3 点击按钮时切换开关,然后根据开关为按钮设置不同的图像资源文件
代码如下所示:
追答
两次点击才切换的话,是不是因为你有多个按钮,但是你只用了一个bool的切换开关。这个必须一个按钮一个开关的。当然你可以将bool 调到按钮的tag中,你可以看我后面的示例代码
如果需要图像随按钮调整的话,那需要将图像设置为按钮的BackgroundImage,并设置按钮的BackgroundImageLayout为ImageLayout.Stretch,你可以看我后面的示例代码。
热心网友 时间:2023-10-21 00:48
能用到的代码楼上都给了,思路可以更简单一些。热心网友 时间:2023-10-21 00:49
把图片转换为BYTE数组保存到按钮的TAG中去,点击的时候把当前的按钮图片保存到1个BYTE数组变量 我命名为PicA,再按钮TAG中保存的图片取去设置为当前的按钮图片,然后把PicA保存到按钮的TAG属性中,这样就可以实现了.追答长度有*,我吧图片转换函数发你百度HI里面吧
private void button1_Click(object sender, EventArgs e)
{
Image a = this.button1.Image;
this.button1.Image = this.button1.Tag as Image;
this.button1.Tag = a;
}
private void Form1_Load(object sender, EventArgs e)
{
//给按钮设置背景图片
string ImagePath = @"G:\Users\Administrator\Pictures\未命名.jpg";
string ImagePath2 = @"G:\Users\Administrator\Pictures\未命名2.jpg";
//吧指定路径的图片转为数组
byte[] PicA= imageToByteArray(ImagePath);
//吧数组转换为IMAGE对象
Image a = byteArrayToImage(PicA);
this.button1.Image=a;
//吧指定路径的图片转为数组
byte[] PicB = imageToByteArray(ImagePath2);
//吧数组转换为IMAGE对象
Image b = byteArrayToImage(PicB);
this.button1.Tag = b;
}
}
}