zoukankan      html  css  js  c++  java
  • win32编程 画图

    void cDefense::DrawAll()
    {
        HDC hDc = GetDC(m_hWnd);//获取客户区窗口,如果该值为NULL,GetDC则获整个屏幕的窗口。
        HDC dcMem = CreateCompatibleDC(hDc);//该创建一个与设备兼容的窗口
        HBITMAP hBitmap = CreateCompatibleBitmap(hDc, 700, 600);//创建一个兼容的位图
        SelectObject(dcMem, hBitmap);//把一个对象(位图、画笔、画刷等)选入指定的窗口。新的对象代替同一类型的老对象。 
        //要把所有的图形绘制到dcMem上
    
        DrawMap(dcMem);
    
        //把dcMem绘制到Dc上
        BitBlt(hDc, 0, 0, 700, 600, dcMem, 0, 0, SRCCOPY);
        ReleaseDC(m_hWnd, hDc);
        DeleteObject(dcMem);
        DeleteObject(hBitmap);
    }
    
    void cDefense::DrawMap(HDC dcMem)
    {
        HDC dcTemp;
        dcTemp = CreateCompatibleDC(NULL);
        HBITMAP hBitmap = (HBITMAP)LoadImage(NULL, L"images\maps\bg.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
        SelectObject(dcTemp, hBitmap);
    
        BITMAP bitInfo;
        GetObject(hBitmap, sizeof(BITMAP), &bitInfo);//得到图像的信息储存到bitInfo中
        BitBlt(dcMem, 0, 0, bitInfo.bmWidth, bitInfo.bmHeight, dcTemp, 0, 0, SRCCOPY);
    
        DeleteObject(dcTemp);
        DeleteObject(hBitmap);
    }
  • 相关阅读:
    Hibernate中session的产生的方式
    Hibernate 多对多关联Demo
    Hibernate 一对多双向关联Demo
    Beta(0/7)
    获得小黄衫感想(2)
    软工实践作业(十)
    成员交换情况
    Alpha事后诸葛亮
    Alpha冲刺总结
    Alpha(10/10)
  • 原文地址:https://www.cnblogs.com/xiaochi/p/5139047.html
Copyright © 2011-2022 走看看