• MFC中CDC相关图形,文本的一些使用方法(转)


        CPen* PenOld,PenNew;
        CBrush* BrushOld,BrushNew;
    
        //选用库存黑色画笔
        PenOld = (CPen*)pDC->SelectStockObject(BLACK_PEN);
    
        //选用库存浅灰色画刷
        BrushOld = (CBrush*)pDC->SelectStockObject(LTGRAY_BRUSH);
        pDC->Rectangle(100,100,300,300);
    
        //关联GDI 库存对象
        PenNew.CreateStockObject(WHITE_PEN);
        pDC->SelectObject(&PenNew);
        pDC->MoveTo(100,100);
        pDC->LineTo(300,300);
        pDC->MoveTo(100,300);
        pDC->LineTo(300,100);
    
        //恢复系统默认的GDI对象
        pDC->SelectObject(PenOld);
        pDC->SelectObject(BrushOld);
    
        PenNew.DeleteObject();
    
        //创建有一个实心的画刷
        CBrush* brush = new CBrush;
        brush->CreateSolidBrush(RGB(255,0,0));
        pDC->SelectObject(brush);
        pDC->Rectangle(400,400,500,500);
    
        //创建阴影画刷
        CBrush BrushOl;
        BrushOl.CreateHatchBrush(HS_BDIAGONAL,RGB(0,0,255));
        pDC->SelectObject(&BrushOl);
        pDC->Rectangle(200,400,300,500);
    
        //创建位图刷函数
        CBrush BrushBit;
        CBitmap Bitmap;
        Bitmap.LoadBitmap(IDB_BITMAP1);
        BrushBit.CreatePatternBrush(&Bitmap);
        pDC->SelectObject(&BrushBit);
        pDC->Rectangle(0,0,100,100);
    
        //设置文本背景
        pDC->SetBkColor(RGB(0,255,0));//背景颜色
        pDC->SetBkMode(OPAQUE);//背景模式
        pDC->SetTextAlign(TA_LEFT|TA_BOTTOM);//设置文本对齐方式
        pDC->TextOut(0,100,"哈哈~~~//设置文本背景~~~");
    
        //设置文本字体
        CFont font;
        VERIFY(font.CreatePointFont(200, "黑体", pDC));
        pDC->SelectObject(&font);
        pDC->TextOut(400,300,"哈哈~~~//设置文本字体~~~");
    
        //使用CBitmap类,显示位图
        CBitmap* pBitmap = new CBitmap;
        pBitmap->LoadBitmap(IDB_BITMAP2);//将位图装入内存
        CDC MemDc;
        MemDc.CreateCompatibleDC(pDC);//创建内存设备环境
        //将位图对象选入设备环境中,并保存原来设备环境的指针
        CBitmap* pBitmapOld = MemDc.SelectObject(pBitmap);
        BITMAP stBitmap;
        pBitmap->GetBitmap(&stBitmap);//获取位图信息
        //输出位图函数: 把源设备环境中的位图复制到目标设备环境中//显示位图
        pDC->BitBlt(70,70,stBitmap.bmWidth,stBitmap.bmHeight,&MemDc,0,0,SRCCOPY);
        pDC->SelectObject(pBitmapOld); //恢复设备环境
    View Code

    最近做的项目与MFC的图像方面比较有联系,所以搜藏下

  • 相关阅读:
    在 Eclipse Workbench 之外使用 Eclipse GUI
    GB2312,GBK,Unicode
    木偶一之推荐系统
    Matlab:任意矩阵计算分布密度(海明距离的分布密度)
    live555在arm linux下的交叉编译,并下载的Arm板播放H264文件
    java设计模式之原型模式
    HDU 1102
    poj3661另一种做法(滚动数组)
    基于QT的小游戏细菌病毒战
    某代码查看器的保护突破
  • 原文地址:https://www.cnblogs.com/huhuuu/p/3081298.html
Copyright © 2020-2023  润新知