1. 程式人生 > >VC++實現一張圖片迴圈滾動

VC++實現一張圖片迴圈滾動

1.載入圖片

CBitmap bmp_bk;

 bmp_bk.LoadBitmapA(IDB_BMP_SKY);//為你的背景圖片

2.把圖片選上記憶體dc

 CClientDC dc(this);

 CDC Bkmdc;

 Bkmdc.CreateCompatibleDC(&dc);


 Bkmdc.SelectObject(&bmp_bk);

3.   新增WM_TIMER事件,在裡面新增程式碼,定義一個全域性變數 int x = 0;

    CClientDC dc(this);
    if( Rundc == NULL)
    {
     Rundc.CreateCompatibleDC(&dc);
     Rundc.SelectObject(CreateCompatibleBitmap(dc,800,600));
    }
           Rundc. BitBlt( 0, 0, x, 600, &Bkmdc, 800-x, 0, SRCCOPY);  //這2條程式碼是主要程式碼,利用2個圖片的合成
           Rundc. BitBlt( x, 0, 800-x, 600, &Bkmdc, 0, 0, SRCCOPY); 
           x += 10; 
      if ( x == 800 ) 
   { 
      x = 0; 
   }