MFC 中GetClientRect、ClientToScreen、GetWindow、RectScreenToClient的使用
CWnd* pWnd = GetDlgItem(IDB_BUT_RECOGNIZE);
pWnd->GetClientRect(&rect); //指该控件自身客户区的矩形,原点为控件左上角,长宽为整个控件的尺寸
ClientToScreen(&rect); // 坐标原点从控件所属窗口客户区移动到屏幕左上角,长宽为整个控件的尺寸,相当于把控件放在它所属的客户区的左上角时,在屏幕坐标系中的位置
pWnd->GetWindowRect(&rect); //该控件相对电脑屏幕的坐标,,原点为屏幕左上角,长宽为整个控件的尺寸
ScreenToClient(&rect); //移动窗口时未改变,所以是相对位置,从屏幕坐标变换到客户区坐标,相当于该控件到客户区
GetClientRect(&rect); //整个窗口自身客户区的坐标 ,原点为客户区左上角,长宽为客户区的尺寸
ClientToScreen(&rect); // 坐标系从客户区变换到屏幕, 该窗口客户区在屏幕坐标系中的位置
GetWindowRect(&rect); //整个窗口相对于电脑屏幕的坐标,,原点为屏幕左上角,长宽为整个窗口的尺寸
ScreenToClient(&rect); //整个窗口在客户区坐标系下的位置
上文转自:https://blog.csdn.net/kapok_lalala/article/details/71859362
一般情况下,ClientToScreen(&rect)与GetClientRect(&rect)联合使用, 联合使用;ScreenToClient(&rect)与GetWindowRect(&rect)联合使用
MFC 中GetClientRect、ClientToScreen、GetWindow、RectScreenToClient的使用的更多相关文章
- MFC中的各种DC区别
转载自:xntop的<区别MFC中的CClientDC.CWindowDC.CPaintDC.CMetaFileDC> CClientDC及其子类 1. CClientDC类只能在客户区绘 ...
- MFC中快速应用OpenCV(转)
转载链接:http://wiki.opencv.org.cn/index.php/MFC%E4%B8%AD%E5%BF%AB%E9%80%9F%E5%BA%94%E7%94%A8OpenCV 简介和缘 ...
- 不使用CvvImage类来在MFC中显示图像
/* * ===================================================================================== * * Filen ...
- MFC中的Invalidate、OnDraw、OnPaint函数的作用
MFC中的Invalidate.OnDraw.OnPaint函数的作用 CWnd::Invalidate voidInvalidate( BOOL bErase = TRUE ); 该函数的作用是使 ...
- MFC中的一般经验之谈5
MFC中提供了CString的类,可以用在一切使用字符串的地方.可以完美取代const char* 或者 LPCTSTR(经常在WinAPI)中传递参数.并且如果需要通过空间进行字符串的数据传递DDX ...
- MFC中获取各个窗口之间的句柄或者指针对象的方法
MFC在非常多的对话框操作中,我们常常要用到在一个对话框中调用还有一个对话框的函数或变量.能够用例如以下方法来解决. HWND hWnd=::FindWindow(NULL,_T("S ...
- GDI+学习笔记(九)带插件的排序算法演示器(MFC中的GDI+实例)
带插件的排序算法演示器 请尊重本人的工作成果,转载请留言.并说明转载地址,谢谢. 地址例如以下: http://blog.csdn.net/fukainankai/article/details/27 ...
- VS2010 MFC中 窗口分割的实现
分割窗口概述 分割窗口,顾名思义,就是将一个窗口分割成多个窗格,在每个窗格中都包含有视图,或者是同一类型的视图,或者是不同类型的视图. MFC分割窗口的方式有两种,动态分割和静态分割. 动态分割窗口通 ...
- VS2010 MFC中制作Visual Studio风格的停靠侧栏窗口(CDockablePane里嵌套FormView表单视图)
VS2010 MFC中制作Visual Studio风格的停靠侧栏窗口(CDockablePane里嵌套FormView表单视图) 1. 在资源窗口里新建一个FormView的Dialog,修改ID为 ...
随机推荐
- java8新特性(二)_lambda表达式
最近一直找java8相关新特性的文章,发现都太没有一个连贯性,毕竟大家写博客肯定都有自己的侧重点,这里找到一本书,专门介绍java8新特性的,感觉大家可以看看<写给大忙人看的JavaSE8> ...
- 基于 Spring Cloud 完整的微服务架构实战
本项目是一个基于 Spring Boot.Spring Cloud.Spring Oauth2 和 Spring Cloud Netflix 等框架构建的微服务项目. @作者:Sheldon地址:ht ...
- spring cloud: Hystrix(三):健康指数 health Indicator
spring cloud: Hystrix(三):健康指数 health Indicator ribbon+hystrix 当使用Hystrix时(spring-cloud-starter-hystr ...
- 雷林鹏分享:服务器上的 XML
服务器上的 XML XML 文件是类似 HTML 文件的纯文本文件. XML 能够通过标准的 Web 服务器轻松地存储和生成. 在服务器上存储 XML 文件 XML 文件在 Internet 服务器上 ...
- 3.2 定位shellcode
前言 此帖为 0day_2th 一书第三章实践不完全记录. 流程记录 searchAddr.c 文件: #include <windows.h> #include <stdio.h& ...
- liunx权限管理之高级权限
高级权限 suid,sgid,sticky ======================================================== 文件权限管理之:高级权限 问题1: 为什么 ...
- logstash配置文件
1. 安装 logstash 安装过程很简单,直接参照官方文档: https://www.elastic.co/guide/en/logstash/current/installing-logsta ...
- Parking Lot CodeForces - 480E
大意: 给定01矩阵, 单点赋值为1, 求最大全0正方形. 将询问倒序处理, 那么答案一定是递增的, 最多增长$O(n)$次, 对于每次操作暴力判断答案是否增长即可, 也就是说转化为判断是否存在一个边 ...
- leetcode-algorithms-30 Substring with Concatenation of All Words
leetcode-algorithms-30 Substring with Concatenation of All Words You are given a string, s, and a li ...
- MySql从一窍不通到入门(五)Sharding:分表、分库、分片和分区
转载:用sharding技术来扩展你的数据库(一)sharding 介绍 转载:MySQL架构方案 - Scale Out & Scale Up. 转载: 数据表分区策略及实现(一) 转载:M ...