2011-06-25 175 views
1

在Windows窗体应用程序中,我有一个灯图像(黑色和白色,亮一个,分别为OFF和ON)。C#Windows窗体中的按钮(开/关)

使用按钮我怎样才能实现这样的场景,使相同的按钮将图像属性(在我的情况是pictureBox)显示为灯,再次按下相同的按钮将关闭灯。

我正在访问图片框的“可见”属性。

+0

您可以使用复选框。这是他们设计的场景(切换布尔值)。 –

+0

是的,但我不想使用复选框。我想使用并显示带有文本开/关的按钮。或者你的意思是我显示在场景后面的Button是一个复选框? –

+0

[Speed Button with Glyph or similar in Visual Studio 2010 using WinForms]可能出现的重复(http://stackoverflow.com/questions/6467874/speed-button-with-glyph-or-similar-in-visual-studio-2010 -using-winforms) –

回答

3

将两个图像放在一起,并获得按钮来切换启用哪个按钮。

在表单设计器中,您可以使其中一个可见,另一个不可见。然后在按钮处理程序的代码可以是这样的:

lightImage.Visible = !lightImage.Visible; 
darkImage.Visible = != lightImage.Visible; 

那会掉哪一个是可见的,消除了需要保持状态别处。

+0

Tack Anders .... –

+0

我不知道如何将2张图片叠放在一起,但是如果您想达到同样的效果: - 将2个图片文件放入您的项目资源 - 点击按钮事件,根据设置切换按钮图像: Properties.Settings.Default.IsOptimizedForTracer =!Properties.Settings.Default.IsOptimizedForTracer;如果(!Properties.Settings.Default.IsOptimizedForTracer) btnOptimizeForTracer.Image = Properties.Resources.TracerOFF; return; } btnOptimizeForTracer.Image = Properties.Resources.TracerON; – michaelAngelo

0

我不知道要放2个图像在彼此的方式,但如果你想达到同样的效果:

  • 到位2个图像文件在您的项目资源,在
  • 点击按钮的情况下,切换取决于设置按钮图像:

这将是Click事件:

Properties.Settings.Default.IsOptimizedForTracer !=Properties.Settings.Default.IsOptimizedForTracer; 

if (!Properties.Settings.Default.IsOptimizedForTracer) 
{ 
btnOptimizeForTracer.Image = Properties.Resources.TracerOFF; 
return; 
} 

btnOptimizeForTracer.Image = Properties.Resources.TracerON; 
相关问题