BmpAnimate.cpp
上传用户:lulishicai
上传日期:2010-03-01
资源大小:13202k
文件大小:1k
源码类别:

Delphi/CppBuilder

开发平台:

C++ Builder

  1. //---------------------------------------------------------------------------
  2. #include <vcl.h>
  3. #pragma hdrstop
  4. #include "math.h"
  5. #include "BmpAnimate.h"
  6. //---------------------------------------------------------------------------
  7. #pragma package(smart_init)
  8. #pragma resource "*.dfm"
  9. TForm1 *Form1;
  10. float a;
  11. //变量声明
  12. //---------------------------------------------------------------------------
  13. __fastcall TForm1::TForm1(TComponent* Owner)
  14.         : TForm(Owner)
  15. {
  16. }
  17. //---------------------------------------------------------------------------
  18. void __fastcall TForm1::FormCreate(TObject *Sender)
  19. {
  20. Form1->Timer1->Enabled=false;
  21. //设置Timer1控件处于无效的状态
  22. a=0;
  23. //变量初始化
  24. }
  25. //---------------------------------------------------------------------------
  26. void __fastcall TForm1::Timer1Timer(TObject *Sender)
  27. {
  28. Image2->Left=Image1->Left+Image1->Width/2+150*cos(a)-Image2->Width/2;
  29. //计算地球的横坐标
  30. Image2->Top=Image1->Top+Image1->Height/2+150*sin(a)-Image2->Height/2;
  31. //计算地球的纵坐标
  32. Image3->Left=Image2->Left+Image2->Width/2+50*cos(5*a)-Image3->Width/2;
  33. //计算月亮的横坐标
  34. Image3->Top=Image2->Top+Image2->Height/2+50*sin(5*a)-Image3->Height/2;
  35. //计算月亮的纵坐标
  36. a=a-3.1415926 / 90;
  37. //角度的变化幅度为20度
  38. }
  39. //---------------------------------------------------------------------------
  40. void __fastcall TForm1::FormClick(TObject *Sender)
  41. {
  42. Form1->Timer1->Enabled=true;
  43. //开始动画
  44. }
  45. //---------------------------------------------------------------------------
  46.