C++ Tutorial: Animate Your Controls

   Hi. It is Bright777 and today we are going to play a little with animation in Visual C++. Also we will learn new control, called Picture Box Control and will use the old one – Timer Control. The program will be very simple and interesting. So if you are ready let’s begin. Intro    Picture Box control is used to display pictures in your application. It can be added to your program like others – just drag it on your form and then select picture in the properties. I selected a picture with bikes, because I am crazy about them :) Also we will make a little animation of label.    First step is to place controls. You may do it like you want. I have done it like in the picture below. And don’t forget to place Timer Control. If you don’t what is it – visit my previous tutorial. Capture Settings    Click on Picture box control and change the property - Image. Here you need to choose the image you want to display in this control. Little tip – you should make size of image such as size of the control or otherwise :).    Then you need to modify Tick function of your Timer control. It should change the color of the label and visibility of the image. Here the code:
  1. private: System::Void timer1_Tick(System::Object^  sender, System::EventArgs^  e) {
  2.  
  3.                                  pictureBox1->Visible=!pictureBox1->Visible;
  4.  
  5.                                  switch(k)
  6.                                  {
  7.                                         case 0 :
  8.                                         {
  9.                                                 label1->ForeColor=Color::Blue;
  10.                                                 k++;
  11.                                                 break;
  12.                                         }
  13.                                         case 1 :
  14.                                         {
  15.                                                 label1->ForeColor=Color::Red;
  16.                                                 k++;
  17.                                                 break;
  18.                                         }
  19.                                         case 2 :
  20.                                         {
  21.                                                 label1->ForeColor=Color::OrangeRed;
  22.                                                 k++;
  23.                                                 break;
  24.                                         }
  25.                                         case 3 :
  26.                                         {
  27.                                                 label1->ForeColor=Color::Green;
  28.                                                 k++;
  29.                                                 break;
  30.                                         }
  31.                                         case 4 :
  32.                                         {
  33.                                                 label1->ForeColor=Color::YellowGreen;
  34.                                                 k=0;
  35.                                                 break;
  36.                                         }
  37.                                  }
  38.                          }
   As you can see, we assign to the property ForeColor value of the color and change visibility of the picture box control. And the last: clicking the button will enable timer and animation. Varialble k is global.
  1. private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
  2.  
  3.                                  k=0;
  4.                                  timer1->Enabled=true;
  5.                                
  6.                          }
If any questions, don’t be shy – post it. Bye!

Add new comment