这一章节主要讲解了 简单的绘图

主要是通过一些小的例子让我们学会了VC++的一些基本操作

void CDrawView::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
m_ptOrigin = point;
// MessageBox("hello");
CView::OnLButtonDown(nFlags, point);
} void CDrawView::OnLButtonUp(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
/*
//获得窗口的设备描述表
HDC hdc;
hdc = ::GetDC(m_hWnd);
//移动到线条起点
MoveToEx(hdc,m_ptOrigin.x,m_ptOrigin.y,NULL);
//画线
LineTo(hdc,point.x,point.y);
//释放
::ReleaseDC(m_hWnd,hdc);
CView::OnLButtonUp(nFlags, point);
*/ /*
//获得窗口的设备描述表对象的指针
CDC* pDC = GetDC();
pDC->MoveTo(m_ptOrigin);
pDC->LineTo(point);
ReleaseDC(pDC);
CView::OnLButtonUp(nFlags, point);
*/ /*
CClientDC dc(this);
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
CView::OnLButtonUp(nFlags, point);
*/ /*
//CWindowDC wDC(this);
//CWindowDC wDC(GetParent());
CWindowDC wDC(GetDesktopWindow());
wDC.MoveTo(m_ptOrigin);
wDC.LineTo(point);
CView::OnLButtonUp(nFlags, point);
*/ /*
CPen pen(PS_SOLID,1,RGB(255,0,0));
CClientDC dc(this);
CPen* pOldPen = dc.SelectObject(&pen);
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
dc.SelectObject(pOldPen);
CView::OnLButtonUp(nFlags, point);
*/ /*
//定义画刷
CBrush brush(RGB(255,0,0));
//获得窗口的设备描述表对象
CClientDC dc(this);
//画矩形
dc.FillRect(CRect(m_ptOrigin,point),&brush); CView::OnLButtonUp(nFlags, point);
*/ //创建位图
CBitmap bitmap;
//加载位图资源
bitmap.LoadBitmap(IDB_BITMAP1);
//画刷
CBrush brush(&bitmap);
CClientDC dc(this);
dc.FillRect(CRect(m_ptOrigin,point),&brush); CView::OnLButtonUp(nFlags, point); }

后面还有几个小例子就没有一一去写了,基本类似,因为个人觉得实用性不大,需要看相关绘图方面的资料时再回头来看

VC++深入详解-第四章学习心得的更多相关文章

  1. VC++深入详解-第五章学习心得

    这一章节主要讲解了文本相关的一些编程 插入符的使用 CreateSolidCaret(100,200);//插入符的宽度和高度 ShowCaret(); 插入符的一般使用方法 int CTestVie ...

  2. 《Android群英传》读书笔记 (2) 第三章 控件架构与自定义控件详解 + 第四章 ListView使用技巧 + 第五章 Scroll分析

    第三章 Android控件架构与自定义控件详解 1.Android控件架构下图是UI界面架构图,每个Activity都有一个Window对象,通常是由PhoneWindow类来实现的.PhoneWin ...

  3. float浮动布局(慕课网CSS笔记 + css核心技术详解第四章)

    ---------------------------------------------------------------------- CSS中的position: CSS三种布局方式: 标准流 ...

  4. Xen虚拟化技术详解---第四章----申请超级调用

    内核驱动程序privcmd负责将位于GuestOS用户空间的超级调用请求传递到GuestOS内核中,与Linux系统的内核驱动程序相同,该操作要在系统调用ioctl()的帮助下完成. 1.关于ioct ...

  5. 孙鑫视频VC++深入详解学习笔记

    孙鑫视频VC++深入详解学习笔记 VC++深入详解学习笔记 Lesson1: Windows程序运行原理及程序编写流程 Lesson2: 掌握C++基本语法 Lesson3: MFC框架程序剖析 Le ...

  6. 弹性布局学习-详解 align-items(四)

    目录 弹性布局学习-介绍(一)  弹性布局学习-详解 flex-direction[决定主轴的方向](二) 弹性布局学习-详解 justify-content(三) 弹性布局学习-详解 align-i ...

  7. IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构(转载)

    IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构 系列文章链接: IIS负载均衡-Application Request Route详解第一篇: ...

  8. 前端技术之_CSS详解第四天

    前端技术之_CSS详解第四天 一.第三天的小总结 盒模型box model,什么是盒子? 所有的标签都是盒子.无论是div.span.a都是盒子.图片.表单元素一律看做文本. 盒模型有哪些组成: wi ...

  9. Python操作redis系列以 哈希(Hash)命令详解(四)

    # -*- coding: utf-8 -*- import redis #这个redis不能用,请根据自己的需要修改 r =redis.Redis(host=") 1. Hset 命令用于 ...

随机推荐

  1. doc文件中的cer附件保存到本地

    在word文档中有一个cer附件,可以双击直接安装证书. 我想把它保存到本地文件系统中,直接选中复制下来的cer文件,使用时,系统提示是无效证书.怎么才能正确 保存到本地文件系统?方法如下: 1.双击 ...

  2. rsync使用ssh指定端口

    增加以下参数: -e 'ssh -p 2222'

  3. CentOS下GPT分区(转)

    GPT格式的分区理论上是支持18EB,而MBR只支持2TB,以后大硬盘GPT是趋势.fdisk最大只能建立2TB大小的分区,创建一个大于2TB的分区就必须使用parted,parted向后兼容MBR. ...

  4. 设置java.library.path的值(Mac/Linux/Windows)

    说明:网上基本针对这个值的设置分为两面,Windows派和Linux派,Windows的不说,Linux下只会说设置LD_LIBRARY_PATH即可,但这种方式在Java 8是一个错误的设置,尤其是 ...

  5. nginx优化(转)

    Puppet利用Nginx多端口实现负载均衡 对 Nginx SSL 的性能进行调整 一.nginx 配置文件中基本设置: 1.  worker_processes 8; 2.  worker_cpu ...

  6. SGU 104. Little shop of flowers (DP)

    104. Little shop of flowers time limit per test: 0.25 sec. memory limit per test: 4096 KB PROBLEM Yo ...

  7. Python 中函数的 收集参数 机制

    定义函数的时候,在参数前加了一个 * 号,函数可以接收零个或多个值作为参数.返回结果是一个元组. 传递零个参数时函数并不报错,而是返回一个空元组.但以上这种方法也有局限性,它不能收集关键字参数. 对关 ...

  8. windows操作系统查看占用端口的进程

    在开发中有时我们需要确定哪个占用了8080端口,在windows命令行窗口下执行: netstat -aon|findstr 命令执行后打印出来的结果如下所示:

  9. Enable WiX project in Visual Studio 2013

    I have a VS 2012 solution with WiX Installer projects. However, when I open the solution in VS 2013 ...

  10. 源码编译Tkinter

    要让Python支持Tkinter, 需要首先安装tcl和tk两个软件包. 下载地址: http://www.tcl.tk/software/tcltk/download.html 或 tcl:htt ...