·MFC中三种坐标系统

1、屏幕坐标系

坐标原点位于屏幕左上角

2、(非客户区)窗口坐标系

坐标原点位于窗口左上角(包括标题栏)

3、客户区坐标系

坐标原点位于客户区左上角(不包括标题栏)

·坐标系转换函数

ScreenToClient

ClientToScreen

//////////////////////////////////

MoveWindow函数改变窗口的位置,对于顶级窗口,移动的原点位于屏幕左上角,对于子窗口,移动的原点位于父窗口的客户区左上角。

·获取几种设备上下文,管理窗口的几种方法

GetDC         //管理整个窗口的客户区              //客户区坐标系

GetWindowDC    //管理整个窗口(包括非客户区——标题栏)     //非客户区坐标系

GetDC(NULL)     //管理整个桌面                  //屏幕坐标系

·获取窗口中的几种矩形区域的方法

GetClientRect  //获得窗口的客户区矩形区域

GetWindowRect  //获得整个窗口(非客户区)的矩形区域     //屏幕坐标系

CDC派生类

CPaintDC    //标准客户区绘图

CWindowDC     //非客户区绘图

CClientDC    //临时客户区绘图,窗口刷新时消失

////////////////////////////////////////

在WM_PAINT和WM_NCPAINT消息处理函数中进行的是标准绘图,所绘制的图形不会在窗口刷新时消失

MFC绘图基础的更多相关文章

  1. MFC绘图基础——上机操作步骤

    一.上机之前的介绍 软件环境:VC++6.0 目的:熟悉基本的MFC框架搭建和了解界面 二.MFC上机操作步骤 1,在Windows桌面上运行VC++6.0. 2,新建项目工程文件. 3,在MFC 应 ...

  2. Direct3D11学习:(七)绘图基础——彩色立方体的绘制

    转载请注明出处:http://www.cnblogs.com/Ray1024 一.概述 在前面的几篇文章中,我们详细介绍了Direct3D渲染所需要的数学基础和渲染管道理论知识.从这篇文章开始,我们就 ...

  3. Android中Canvas绘图基础详解(附源码下载) (转)

    Android中Canvas绘图基础详解(附源码下载) 原文链接  http://blog.csdn.net/iispring/article/details/49770651   AndroidCa ...

  4. GDI+(一):GDI+ 绘图基础

    一.GDI+绘图基础 编写图形程序时需要使用GDI(Graphics Device Interface,图形设备接口),从程序设计的角度看,GDI包括两部分:一部分是GDI对象,另一部分是GDI函数. ...

  5. 【MFC】MFC绘图不闪烁——双缓冲技术

    MFC绘图不闪烁——双缓冲技术[转] 2010-04-30 09:33:33|  分类: VC|举报|字号 订阅 [转自:http://blog.163.com/yuanlong_zheng@126/ ...

  6. windows游戏编程 绘图基础

    本系列文章由jadeshu编写,转载请注明出处.http://blog.csdn.net/jadeshu/article/details/22451353 作者:jadeshu   邮箱: jades ...

  7. Python Matplotlib绘图基础

    Matplotlib绘图基础 1.Figure和Subplot import numpy as np import matplotlib.pyplot as plt #创建一个Figure fig = ...

  8. Java绘图基础

    <零基础学Java> Java绘图基础 绘图是高级程序设计中非常重要的技术,例如,应用程序需要绘制闪屏图像.背景图像.组件外观Web程序可以绘制统计图.数据库存储的图像资源等. Graph ...

  9. MFC GDI绘图基础

    一.关于GDI的基本概念 什么是GDI? Windows绘图的实质就是利用Windows提供的图形设备接口GDI(Graphics Device Interface)将图形绘制在显示器上. 在Wind ...

随机推荐

  1. [Codeforces 464E] The Classic Problem(可持久化线段树)

    [Codeforces 464E] The Classic Problem(可持久化线段树) 题面 给出一个带权无向图,每条边的边权是\(2^{x_i}(x_i<10^5)\),求s到t的最短路 ...

  2. js实现方块弹珠游戏

    下载地址:https://files.cnblogs.com/files/liumaowu/%E5%BC%B9%E4%B8%80%E5%BC%B9%E6%89%93%E6%96%B9%E5%9D%97 ...

  3. Helm教程

    1.概述 Helm是k8s的包管理工具,类似Linux系统常用的 apt.yum等包管理工具. 使用helm可以简化k8s应用部署 2.基本概念 Chart:一个 Helm 包,其中包含了运行一个应用 ...

  4. Linux关闭重启系统

    reboot:重启系统 - 需要root权限 halt:关机 - 需要root权限 poweroff:关机 - 可直接运行

  5. 在Intellij上开发项目发布到tomcat时,同一个局域网内的其他机子访问不到自己电脑上tomcat中的项目,只能本机访问

    在Intellij上开发项目发布到tomcat时,同一个局域网内的其他机子访问不到自己电脑上tomcat中的项目,只能本机访问 问题描述:在Intellij上开发项目发布到tomcat时,同一个局域网 ...

  6. wxstring与其他类型转换

    wxstring与其他类型转换 1.1 int to wxString: wxString str = wxString::Format(wxT("%i"),myInt); 1.2 ...

  7. Shell07--正则应用

    目录 1. 正则表达式概述 2. 正则表达式规则 3. 正则表达式之GREP文本过滤 4. 正则表达式之SED文本处理 5. 正则表达式之AWK文本处理 1. 正则表达式概述 01. 什么是正则表达式 ...

  8. python常用函数 E

    endswith(str/tuple) 末尾元素匹配,可以传入tuple. 例子: enumerate(iterable) 可以跟踪集合元素索引,适用于迭代器. 例子: eval(str) 可以字符串 ...

  9. BZOJ-3143/洛谷3232 游走(HNOI2013)概率DP

    题意:给定n个点m条边.每条边的权值还没决定,权值大小为从1到m.从1出发每次等概率选一条出边向下走,直到走到n点停止,路径代价就是边权总和.由你来决定边权来使得上诉路径代价期望值最小. 解法:点这么 ...

  10. 记一个日志冲突——管中窥豹[java混乱的日志体系]

    D:\Java\jdk1.8.0_211\bin\java.exe "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA Communit ...