创建动画按钮

我有按钮可以在点击上创建动画吗?

在此处输入图像描述

与photoshop我创建了一个两个图像(启用和禁用)。 在Windows窗体和单击事件中插入图片框。单击图像从启用更改为禁用,但您可以拥有动画?

像这样:

在此处输入图像描述

看起来你提到了WinForms所以我会解决这个问题。 是动画是可能的,但一般来说这将是一些工作。

在CodeProject上似乎有一个通用动画框架(虽然有限)的实现。 在评论中,schallos使用表达式树发布了更好的reflection代码实现。

一般原则是:

  • 使用PictureBox,您可以获得双缓冲
  • 使用计时器控件来控制重绘(在PictureBox上调用Invalidate()
  • 您可能希望在动画中添加一些缓动以使其看起来更平滑; 当用户点击很长时间时,它会增加一些加速度。

使用GIF不需要计时器。

使用Windows窗体,您可以从为每个按钮创建动画GIF开始。 它必须包括前向和后向。 您可以通过“动画”面板通过Photoshop完成此操作。 在PictureBox单击事件上,您可以将图像设置为播放或停止。

下面的代码会将您的图像设置在开始帧上。

 imgButtonDimension = new FrameDimension(imgButtonDimension.FrameDimensionsList[0]); imgButton.SelectActiveFrame(imgButtonDimension, 0); pictureBox.Image = imgButton;` 

如果这是您想采取的方法,我可以提供进一步的详细说明。