Create Animated Button

前端 未结 2 1132
日久生厌
日久生厌 2021-02-04 19:02

I have button it possible create animate on click?

\"enter

with photoshop i have c

相关标签:
2条回答
  • 2021-02-04 19:45

    It looks like you mentioned WinForms so I'll address that. Yes animation is possible but in general it's going to be a bit of work.

    There appears to be an implementation of a general purpose animation framework (although limited) over on CodeProject. In the comments schallos posted a better implementation of the reflection code using expression trees.

    The general principle is:

    • Use a PictureBox so you get double buffering
    • Use a timer control to control repainting (calling Invalidate() on your PictureBox)
    • You'll probably want to add some easing into the animation so it appears smoother; a bit of acceleration added to it when the user clicks goes a long way.
    0 讨论(0)
  • 2021-02-04 19:56

    A timer is not required using a GIF.

    Using windows forms you could start by creating an animated GIF for each button. It would have to include both the forward and backwards direction. You can do this through Photoshop via the "Animation" panel. On the PictureBox click event you can set the image to play or stop.

    The code below would set your image on the beginning frame.

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

    If this is the approach you'd like to take I can provide further elaboration.

    0 讨论(0)
提交回复
热议问题