代码片段:快速的例子代码片段



[创建个DirectDraw对象] 

LPDIRECTDRAW lpDD;
HRESULT ddrval;
ddrval = DirectDrawCreate( NULL, &lpDD, NULL );
( ddrval != DD_OK )
{
    // 在这里输出检测代码
}

[设置协作级别] 


ddrval = lpDD->SetCooperativeLevel( hWnd, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN );
( ddrval != DD_OK)
{
    // 在这里输出检测代码
}


[设置视频模式] 


ddrval = lpDD->SetDisplayMode( 640, 480, 8);
( ddrval != DD_OK)
{
    // 在这里输出检测代码
}


[创建主表面] 


LPDIRECTDRAWSURFACE lpDDSPrimary;
DDURFACEDESC ddsd;
HRESULT ddrval;

// 清除结构中所有数据
mem( &&ddsd, 0, (ddsd) );

// 设置标记
ddsd.dwSize = ( ddsd );
ddsd.dwFlags = DDSD_CAPS | DDSD_BACKBUFFERCOUNT;
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE | DDSCAPS_FLIP | DDSCAPS_COMPLEX;
ddsd.dwBackBufferCount = 1;

// 创建表面
ddrval = lpDD->CreateSurface( &ddsd, &lpDDSPrimary, NULL );

( ddrval != DD_OK )
{
    // 在这里输出检测代码
}


[创建后表面] 


DDSCAPS ddscaps;

LPDIRECTDRAWSURFACE lpDDSBack; ddscaps.dwCaps = DDSCAPS_BACKBUFFER;
ddrval = lpDDSPrimary->GetAttachedSurface( &ddscaps, &lpDDSBack );
( ddrval != DD_OK )
{
    // 在这里输出检测代码
}


[创建离屏表面] 


LPDIRECTDRAWSURFACE lpDDSOffscreen;
DDSURFACEDESC ddsd;
HRESULT ddrval;

ddsd.dwFlags = DDSD_CAPS | DDSD_HEIGHT | DDSD_WIDTH;
ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
ddsd.dwHeight = 480;
ddsd.dwWidth = 640;

ddrval = lpDD->CreateSurface( &ddsd, &lpDDSOffscreen, NULL );
( ddrval != DD_OK )
{
    // 在这里输出检测代码
}
Tags:  快速排序代码 代码片段

延伸阅读

最新评论

发表评论