MFC运算功能强大,拥有完备的绘图功能。
      在Windows平台上,应用程序的图形设备接口(graphics device interface,GDI)被抽象为设备上下文(Device Context,DC)。
      在微软基类库MFC中,CDC类是定义设备上下文对象的基类,所有绘图函数都在CDC基类中定义。当需要输出文字或图形时,就需要调用CDC类的成员函数,这些成员函数具备输出文本、绘制图形的功能。
      本文讲解的例程全部在TestView.cpp文件的void CTestView::OnDraw(CDC* pDC)函数中实现。
1.在屏幕的P0(20,20)坐标位置处绘制一个蓝色像素点,然后读出该像素点的颜色,水平平移100个像素绘制P1点;画一个矩形。
   代码如下:
 void CMy00View::OnDraw(CDC* pDC)
{
CMy00Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here COLORREF clr;
int x=,y=;
pDC->SetPixelV(x,y,RGB(,,));
clr=pDC->GetPixel(x,y);
pDC->SetPixelV(x+,y,clr);//像素点
pDC->Rectangle(,,,);//矩形
}

效果如下:

2.从起点P0(20,30)到终点P1(200,300)画一条1像素宽的蓝色直线
代码如下:
 void CMy00View::OnDraw(CDC* pDC)
{
CMy00Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
//从起点P0(20,30)到终点P1(200,300)画一条1像素宽的蓝色直线,
CPen NewPen,*p01dPen;
NewPen.CreatePen(PS_SOLID,,RGB(,,));
p01dPen=pDC->SelectObject(&NewPen);
pDC->MoveTo(,);
pDC->LineTo(,);
pDC->SelectObject(p01dPen);
NewPen.DeleteObject();
}
效果如下:
 
3.绘制左上角点为P0(100,100),右下角点为P1(600,300)的矩形。矩形边界线为1像素宽的蓝线,矩形内部填充为绿色
  代码如下:
 void CMy00View::OnDraw(CDC* pDC)
{
CMy00Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
CPen NewPen,*p01dPen;
NewPen.CreatePen(PS_SOLID,,RGB(,,));
p01dPen=pDC->SelectObject(&NewPen);
CBrush NewBrush,*p01dBrush;
NewBrush.CreateSolidBrush(RGB(,,));
p01dBrush=pDC->SelectObject(&NewBrush);
pDC->Rectangle(,,,);
pDC->SelectObject(p01dBrush);
NewBrush.DeleteObject();
}

效果如下:

利用Microsoft VC++6.0 的MFC 的绘图工具实现简单图形的绘制的更多相关文章

  1. VC++ 6.0 C8051F340 MFC programming note

    /************************************************************************************** * VC++ 6.0 C ...

  2. VC++ 6.0创建MFC工程时的初级备要点(二)

        在看到一个MFC工程时,可能根据上一篇文章已经知道了哪些是重要的,那些是在创建工程的时候已经被初始化的!!下面介绍一下在看代码的过程的策略!!这里假设创建的基于多对话框的MFC工程名为test ...

  3. VC++6.0 显示行号

    通过VC6LineNumberAddin能够解决这个问题,方法如下. 一.下载该文件. 网上很多免费的. 二.使用方法:            [1]:打开VC++6.0,点击菜单“工具(Tools) ...

  4. VC++6.0和VS2005在编写MFC应用程序时,操作方面的差异

    VC++6.0和VS2005在编写MFC应用程序时,操作方面的差异 一直用VC++6.0,对VS2005不太了解,下面简单的熟悉一下VS2005的一下功能,总结一下VS2005在编写MFC时候的应用. ...

  5. VC++6.0一些常见问题解决方法(打开多个窗口、行号、添加文件无响应、更改.exe图标及名称等等)

    背景: 最近使用VC++6.0做一个界面,供测试CAN通信使用.由于客户希望我们提供简单方便的函数接口让其最快速使用CAN,DLL(动态链接库)是不二之选.做DLL需要两个VC窗口进行测试才方便.可是 ...

  6. VC++ 6.0中实现三叉切分窗口与多视图 [转]

    一.引用 当用户需要同时对文当的不同部分进行编辑时,常常会用到切分窗口;这些窗口可以都是相同的视,或者一个窗口为列表视,而另一个为树型视图.应用程序框架有多种方式来表示多视图,切分窗口是其中的方式之一 ...

  7. VC++6.0 编写插件(图文并茂)

    下午偶然注意到VC++6.0新建工程标签页下的DevStudio Add-in Wizard,没有接触过,看名字是给Developer Studio开发插件,心生喜感,于是百度之,发生百度检索几乎找不 ...

  8. VC++ 6.0 中使用 MSComm.ocx

    很多人喜欢单独安装VC++6.0,而不是完整安装VS,这样占用空间比较少,启动也快.但是要使用某些ActiveX控件的时候却会出现许可证问题(requires a design-time licenc ...

  9. VC++6.0的使用方法

    VC++6.0的最基本使用方法,创建一个c++项目工程可参考:https://jingyan.baidu.com/article/8ebacdf0cbdb5749f75cd54a.html 这里面的操 ...

随机推荐

  1. easyui 排序实现

    1.对easyui  datagrid 返回的数据,进行排序处理,便于搜索到我们的有用的信息. 例如: 2.datagrid 需要设置 sortable : true { field : 'crtTi ...

  2. Git 学习(四)操作修改和版本穿梭

    Git 学习(四)操作修改和版本穿梭 之前的章节,已介绍了本地Git库创建.暂存区增.删.改,以及提交版本库:可回顾下命令操作: git add 和 git commit. 光有之前章节的操作,Git ...

  3. sql的嵌套查询,把一次查询的结果做为表继续进一步查询;内联视图

    Mysql的嵌套表查询 嵌套SELECT语句也叫子查询,一个 SELECT 语句的查询结果能够作为另一个语句的输入值.子查询可以: 出现在Where子句中, 出现在from子句中,作为一个临时表使用, ...

  4. mac下virtualbox安装win7系统

    下载安装参考: http://win.bai-bang.top/shendu64win7.html 1.之前在win7下的virtualbox安装win7操作溜溜的,换做mac,不知道是不是太久没有安 ...

  5. 应用Flume+HBase采集和存储日志数据

    1. 在本方案中,我们要将数据存储到HBase中,所以使用flume中提供的hbase sink,同时,为了清洗转换日志数据,我们实现自己的AsyncHbaseEventSerializer. pac ...

  6. 我所遭遇过的游戏中间件--FlashOcx

    使用Flash做游戏界面的另一种方式是通过Abode提供flash.ocx处理Flash界面.将Flash图像通过GDI绘制出来后,再将图像数据拷贝到一个D3D的纹理结构中,最后由引擎的D3D接口进行 ...

  7. VueJS如何引入css或者less文件的一些坑

    我们在做Vue+webpack的时,难免会引入各种公共css样式文件,那么我们改如何引入呢?引入时会有那些坑呢? 首先,引入公共样式时,我们在“main.js”里使用AMD的方式引入,即 requir ...

  8. Python并发编程-Redis

    Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Remote Dictionary Server(Redis)是一个基于 key-value ...

  9. Java基础(十四):泛型

    一.Java 泛型: Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型. 泛型的本质是参数化类型,也就 ...

  10. PHP OAuth 2.0 Server

    PHP OAuth 2.0 Server PHP OAuth 2.0 Server ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ ...