windows 中的映射模式

原创 2007年09月18日 23:23:00

1、映射模式的设置

可以通过SetMapMode 和GetMapMode 两个函数来调用;

 int SetMapMode(
  HDC
hdc,        // handle of device context
  int fnMapMode   // new mapping mode  映射模式
);

设置当前的设备环境的映射模式
int GetMapMode(
  HDC
hdc   // handle of device context
);
获取当前的设备环境的映射模式

窗口是对应逻辑坐标系上程序员设定的一个区域,视口是对应于实际输出设备上程序员设定的一个区域。

窗口区域的定义由SetWindowExtEx 函数完成

BOOL SetWindowExtEx(
  HDC
hdc,       // handle of device context
  int nXExtent// new horizontal window extent 为以逻辑单位表示的新窗口区域高度
  int nYExtent// new vertical window extent
  LPSIZE lpSize  // original window extent
);
视口区域的定义由SetViewportExtEx函数完成

BOOL SetViewportExtEx(
  HDC
hdc,       // handle of device context
  int nXExtent// new horizontal viewport extent 以物理设备单位表示的新视口区域高度
  int nYExtent// new vertical viewport extent
  LPSIZE lpSize  // original viewport extent
);
例如:

SetWindowExtEx(hdc,1,1,NULL);

SetViewportExtEx(hdc,10,10,NULL);

表示一个单位十个象素;Y轴向下,X轴向左

如果为SetWindowExtEx(hdc,-1,-1,NULL)则表示Y轴向上,X轴向右

视口的原点和窗口的原点可以通过SetWindowOrgEx和SetViewportOrtEx两个函数来设置

BOOL SetWindowOrgEx(
  HDC
hdc// handle of device context
  int X,    // new x-coordinate of window origin窗口
  int Y,    // new y-coordinate of window origin
  LPPOINT lpPoint
            // address of structure receiving original origin  保存原来的坐标POINT结构地址
);

BOOL SetViewportOrgEx(
  HDC
hdc// handle of device context
  int X,    // new x-coordinate of viewport origin视口
  int Y,    // new y-coordinate of viewport origin
  LPPOINT lpPoint
            // address of structure receiving original origin
);

 

windows下使用HHKB键盘,配置autohotkey键位映射

放出我的autohotkey脚本DIP开关用的011111 vim.ahk 下载地址 安装autohotkey 新键xxx.ahk,内容参考以下 运行xxx.ahk ; # Win (Windows...
  • hamenny
  • hamenny
  • 2016年11月24日 14:39
  • 2843

VMware网络模式——NAT端口映射

vmware网络模式配置(这部分资料网上一大片,就说说自己的配置经历吧)。VMware共3中网络模式,各有优缺,看需求:1.bridge桥接模式。这种模式是最简单的,直接物理机跟虚拟机联接,物理机跟虚...
  • C_MonkeyDream
  • C_MonkeyDream
  • 2016年02月04日 23:12
  • 2617

samba服务器配置及window网络磁盘映射

1、smb.conf文件配置 Samba的配置文件一般就放在/etc/samba目录中,主配置文件名为smb.conf,该文件中记录着大量的规则和共享信息,samba服务器的搭建大部分是对该文件进行操...
  • hunanchenxingyu
  • hunanchenxingyu
  • 2013年08月05日 00:32
  • 14676

Windows程序设计:GDI映射模式

Windows有多种映射模式可以选择: #define MM_TEXT 1 //1逻辑单位=1像素 #define MM_LOMETRIC 2 //1...
  • alex1997222
  • alex1997222
  • 2017年12月10日 20:22
  • 35

走进windows编程的世界-----位图及映射模式

1   位图的使用1.1位图介绍位图—通过保存在图像上每个点的颜色,生成响应的位图文件。光栅图:图像点阵的保存矢量图:绘图命令的保存。1.2位图的使用1、             加载位图资源Load...
  • jsh13417
  • jsh13417
  • 2014年07月15日 21:55
  • 1797

VC++例说Windows窗口、视口以及GDI映射模式

日志       glViewport()和glOrtho()的理解-OpenGL   30分钟掌握STL VC++例说Windows窗口、视口...
  • fengxiaochenduanduan
  • fengxiaochenduanduan
  • 2014年01月21日 15:33
  • 638

Windows编程中的映射模式和坐标转换02

一、Windows中的映射模式 1、Windows定义映射模式的目的 经过我的综合,Windows定义映射模的目的又以下几个方面:1、不同人的使用习惯。不同国家的,不同地区,以及不同的人因为习惯喜...
  • lzm420241
  • lzm420241
  • 2012年07月23日 16:49
  • 764

Windows映射模式

Windows应用程序绘制图形时使用的是一种逻辑单位,每个逻辑单位的大小由映射模式决定, 这个逻辑单位既可以与设备单位(屏幕或打印机上的一个像素点)相同,也可以是一种物理单 位(如毫米),还可以是用户...
  • u010272085
  • u010272085
  • 2013年11月29日 18:45
  • 277

VC++例说Windows窗口、视口以及GDI映射模式

转自:http://anony3721.blog.163.com/blog/static/511974201132810019635/ -------------------------------...
  • dy106
  • dy106
  • 2013年04月09日 23:45
  • 801

windows程序设计(8):映射模式

什么是映射模式呢?为了说清楚这个概念,我们先介绍两个名词:“窗口”、“视口”。 视口是基于设备坐标的。对于显示器,就是像素的,也就是你看到的。而窗口是基于逻辑坐标的,虚拟的,也是你写程序时使用的。而...
  • thefutureisour
  • thefutureisour
  • 2012年05月28日 16:41
  • 1744
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:windows 中的映射模式
举报原因:
原因补充:

(最多只允许输入30个字)