在网上找了半天解决图象闪烁的方法应该用双缓冲,可是只有MFC的代码,如果是SDK应该怎么写?

解决方案 »

  1.   

    还不是一样吗?先创建一个兼容内存设备描述表,然后在里面画,画好后就bitblt到view里
      

  2.   

    用 CreateCompatibleDC 函数创建一个兼容DC句柄,并做图,之后 BitBlt 到 DC 上
      

  3.   

    MFC的代码改成SDK的就好了。
    差一下MSDN吧,其实函数名是一样的。
      

  4.   

    hdc = GetDC( hWnd );
    mdc = CreateCompatibleDC( hdc );//然后在mdc上作操作 搞定后用SelectObject( mdc, xxxx );
    BitBlt( hdc,x,y,32,47,mdc,0,0,SRCCOPY );
      

  5.   

    楼上的漏了两句,要先创建一个HBITMAP的,CreateCompatibleDC创建出来的mdc是不带BITMAP的,要自己创建一个:
    hMemBitMap = ::CreateCompatibleBitmap( _hdc, 800, 600 );
    ::SelectObject( mdc, hMemBitMap );
      

  6.   

    CreateCompatibleDC创建MemDC
    获取位图句柄(创建一个或者装载一个)
    选HBitmap到MemDC
    在MemDC上绘图
    bitblt到窗口dc