|
我把屏幕设置为:640,480,16,0,DDSDM_STANDARDVGAMODE
然后,我根据我定义的数组大小用两个for循环,在后缓冲区,反复帖tile,tile的大小为36*36,最后翻页,在屏幕上显示地图,可是不管我按数组的大小帖,还是加大数组的行数和列数,总是帖不满,屏幕的右边和下边老是缺一整条,而且缺的地方闪.
举个例子
CreateDDPla(36,36,"C:/Documents and Settings/开普科技/My Documents/My Pictures/diban.bmp",25);//自定义函数,创建Tile表面
//以下为拷贝数据到Tile表面
::SelectObject(hdc,kip);
pOPla[25]->GetDC( &hdc1 );
::BitBlt( hdc1 , 0 , 0 ,36,36, hdc , 0 , 0 , SRCCOPY );
pOPla[25]->ReleaseDC(hdc1);
//用循环帖Tile
for(=0;i<15;i++)
{
for(j=0;j<21;j++)
{
pBBuf->BltFast(tr*36,rt*36,pOPla[25],CRect(0,0,36,36),DDBLTFAST_WAIT);
}
}
pPSur->Flip( NULL , DDFLIP_WAIT ); |
|