设为首页加入收藏诚征代理商 
人才网-提供最新的人才网信息,人才信息查询,人才网招聘服务


快速代码展示之快速的例子代码片段

快速代码展示之快速的例子代码片段


[创建一个DirectDraw对象]
  
  LPDIRECTDRAW lpDD;
  HRESULT ddrval;
  ddrval = DirectDrawCreate( NULL, &lpDD, NULL );

if( ddrval != DD_OK )
  {
  // 在这里输出一些错误检测代码
  }
  
  [设置协作级别]
  
  ddrval = lpDD->SetCooperativeLevel( hWnd, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN );
  if( ddrval != DD_OK)
  {
  // 在这里输出一些错误检测代码
  }
  
  [设置视频模式]
  
  ddrval = lpDD->SetDisplayMode( 640, 480, 8);
  if( ddrval != DD_OK)
  {
  // 在这里输出一些错误检测代码
  }
  
  [创建主表面]
  
  LPDIRECTDRAWSURFACE lpDDSPrimary;
  DDURFACEDESC ddsd;
  HRESULT ddrval;
  
  // 清除结构中所有的数据
  memset( &&ddsd, 0, sizeof(ddsd) );
  
  // 设置标记
  ddsd.dwSize = sizeof( 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 );
  
  if( ddrval != DD_OK )
  {
  // 在这里输出一些错误检测代码
  }
  
  [创建后表面]
  
  DDSCAPS ddscaps;
  
  LPDIRECTDRAWSURFACE lpDDSBack; ddscaps.dwCaps = DDSCAPS_BACKBUFFER;
  ddrval = lpDDSPrimary->GetAttachedSurface( &ddscaps, &lpDDSBack );
  if( 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 );
  if( ddrval != DD_OK )
  {
  // 在这里输出一些错误检测代码
  }



人才网 http://www.job128.com 信息部