GetWindowRect是取得窗口在屏幕坐标系下的RECT坐标(包括客户区和非客户区),这样可以得到窗口的大小和相对屏幕左上角(0,0)的位置。

    GetClientRect取得窗口客户区(不包括非客户区)在客户区坐标系下的RECT坐标,可以得到窗口的大小,而不能得到相对屏幕的位置,因为这个矩阵是在客户区坐标系下(相对于窗口客户区的左上角)的。  

    ClientToScreen把客户区坐标系下的RECT坐标转换为屏幕坐标系下的RECT坐标.

    ScreenToClient把屏幕坐标系下的RECT坐标转换为客户区坐标系下的RECT坐标.     我们对同一个窗口先GetWindowRect取得一个RECT,再用ScreenToClient转换到客户坐标系。然后GetClientRect取得一个RECT,再用ClientToScreen转换到屏幕坐标系。显然,GetWindowRect取得的矩阵不小于GetClientRect取得的矩阵。因为前者包含了非客户区,而后包括了客户区。   

    对GetWindowRect取得的矩阵ScreenToClient后,矩阵的大小没有变小,(-3,-29)是窗口的左上角的坐标,相对窗口客户区左上角。   

    对GetClientRect取得的矩阵ClientToScreen后,矩阵也没有变大,新得到的矩阵是窗口客户区在屏幕坐标系上的RECT。

GetWindowRect和GetClientRect相关推荐

  1. GetWindowRect和GetClientRect的区别详解

    一,先介绍两者使用方式 方式一 CWnd* pWnd;pWnd = GetDlgItem(IDC_STATIC_PIC);pWnd->GetWindowRect(&m_PicWindow ...

  2. GetWindowRect和GetClientRect(得到窗口坐标)

    GetWindowRect是取得窗口在屏幕坐标系下的RECT坐标(包括客户区和非客户区),这样可以得到窗口的大小和相对屏幕左上角(0,0)的位置. GetClientRect取得窗口客户区(不包括非客 ...

  3. GetWindowRect() 和 GetClientRect() 的区别

    新建一个基于对话框的MFC的exe程序: 删除对话框的所有按钮,并添加一个test按钮,添加一个Static控件,ID为IDC_STATIC: 双击test按钮,在响应函数中添加以下代码: View ...

  4. (转载博文)VC++API速查

    窗口处理 2.1 窗口简介 2.2.1 创建普通窗口(CreateWindow.CreateWindowEx) 2.2.2 关闭窗口(CloseWindow) 2.2.3 销毁窗口(DestroyWi ...

  5. c# 任务栏托盘图标鼠标进入MouseEnter和鼠标离开MouseLeave实现

    c#的任务栏托盘图标控件NotifyIcon只有MouseMove事件,MouseMove事件刷新很快,很不好用,而且我们有时需要鼠标进入和离开的事件,但是不知道c#怎么回事,没有提供,那么就只能自己 ...

  6. 新人新博客新学习家园

    MFC如何显示位图 51CTO 这是我第二天加入51,感觉这里的学习气氛非常浓厚,开始了自己计算机道路! 我是在校学生,第一次接触C++,MFC,对于这些有着许多兴趣,无论学习的过程多么艰辛,都希望能 ...

  7. VC++ 坐标问题总结,控件大小随窗口变化

    [出处:blog.csdn.net/lanmanck] 一般变控件位置和大小在OnSize()消息中处理,不外乎几个函数: GetClientRect(),GetClientRect(),Screen ...

  8. 在Windows95/98中实现苹果窗口界面

    有没有想过在Windows环境下实现苹果电脑窗口界面的风格?下面就以实现苹果电脑窗口风格为例,进行一次奇妙的旅行. 原 理   仔细观察苹果窗口,发现和Windows窗口的区别主要体现在标题栏和控制按 ...

  9. 客户区坐标与屏幕坐标之间的转换问题

    转载地址:http://blog.csdn.net/ke_yang/article/details/5417552 http://blog.163.com/tufanghui01@126/blog/s ...

最新文章

  1. c# linux 效率,c# – linux / mono上的HTTP性能
  2. 搞机器学习还敲什么代码
  3. Android使用SurfaceView实现墨迹天气的风车效果
  4. mongodb java驱动_Java操作MongoDB之mongodb-driver(一)
  5. hive外部表改为内部表_Hive基础之创建表
  6. 蜗牛星际NAS安装黑群晖V6.2.1+洗白+免U盘引导启动
  7. GNSS精密星历读取(matlab)
  8. 2021中国最好的自行车牌子排名世界十大山地自行车品牌排行榜
  9. mysql 删除恢复_MySQL之delete 忘加where条件误删除恢复
  10. 下列签名无效: EXPKEYSIG CDFB5FA52007B954 Metasploit 解决办法
  11. Nebula Graph学习篇1_基础概念、初步使用、整合SpringBoot使用
  12. JavaScript(总结完毕)2021.3.7
  13. python编程从入门到实践 第18章Django入门 2022年最新
  14. registermodule 微前端_麦饭:可能是你见过最酷最简单的微前端解决方案
  15. 如何办理义乌个体户呢?快来看
  16. 混合表象下单粒子格林函数计算
  17. LeetCode 鸡蛋掉落(最清晰的解法)
  18. STM32学习100步之第四十七-四十八步——旋转编码器驱动程序
  19. csdn自动签到python脚本
  20. 网络营销教程—SEO 第一章 网络营销(中)

热门文章

  1. [2019.3.25]多项式求逆
  2. 微信小程序开发问题汇总
  3. ASP.NET MVC:Razor 引入命名空间
  4. 《STL源代码剖析》---stl_set.h阅读笔记
  5. 【算法笔记】B1058 选择题
  6. 使用Postman测试https接口时的小问题记录
  7. Spring+Spring Boot+Mybatis框架注解解析
  8. 2017.10.31笔记
  9. Android开发之TextView的滚动显示
  10. Mysql中show命令详解