MFC GetWindowRect, GetClientRect和ScreenToClient
来源:互联网 发布:知行结合 编辑:程序博客网 时间:2024/05/20 18:43
网上说,
“GetWindowRect() 得到的是在屏幕坐标系下的RECT(即以屏幕左上角为原点)
GetClientRect() 得到的是在客户区坐标系下的RECT(即以所在窗口左上角为原点,去掉了标题栏计算,仅仅是个大小,返回值的左上角永远为0,0)
ScreenToClient() 就是把屏幕坐标系下的RECT坐标转换为客户区坐标系下的RECT坐标”
对于dialog中的一个button对象,通过GetWindowRect()后GetParent()->ScreenToClient(),可以得到button在对话框中的实际坐标值,起始点为对话框去掉titlebar和左边框后的左上角。对于一个button,在各处调用上述函数后,取值的数据对比:
可以看出,在对话框相对于屏幕位置不变的情况下,button相对于屏幕的位置(GetWindowRect)发生了变化;button的大小也发生了变化。前者比较蹊跷,后者可能是由于代码中对于button的重新描画造成。原因待查。
- MFC GetWindowRect, GetClientRect和ScreenToClient
- GetWindowRect,GetClientRect,ClientToScreen 和ScreenToClient
- GetWindowRect()和GetClientRect() 及ScreenToClient
- GetClientRect , GetWindowRect ,ClientToScreen和ScreenToClient的疑问
- GetWindowRect再ScreenToClient和GetClientRect的探究
- GetClientRect相当于GetWindowRect和ScreenToClient区别
- GetClientRect , GetWindowRect ,ClientToScreen和ScreenToClient的疑问
- GetClientRect相当于GetWindowRect和ScreenToClient区别
- GetWindowRect(), GetClientRect(), ScreenToClient()
- GetWindowRect、GetClientRect、ClientToScreen、ScreenToClient
- GetWindowRect ScreenToClient GetClientRect
- ClientToScreen ScreenToClient GetWindowRect GetClientRect
- GetClientRect/GetWindowRect/ScreenToClient/ClientToWindow
- MFC的坐标转换GetClientRect/GetWindowRect/ClientToScreen/GetCursorPos/ScreenToClient
- MFC的坐标转换GetClientRect/GetWindowRect/ClientToScreen/GetCursorPos/ScreenToClient
- [MFC]GetWindowRect和GetClientRect区别
- GetWindowRect, GetClientRect, ScreenToClient的区别
- GetWindowRect、GetClientRect、ScreenToClient与ClientToScreen
- java.lang.OutOfMemoryError: PermGen space异常
- DB2的MERGE语句使用注意事项!
- 项目任务量评估
- C++科学计算库
- IBM待遇完全揭密--工资 级别等(网上摘抄)
- MFC GetWindowRect, GetClientRect和ScreenToClient
- 进程调度-时间片轮转算法
- 优化php代码的42条建议
- 透彻了解inline的里里外外——effective c++学习笔记
- jQuery智能提示插件
- 为“异常安全的努力”是值得的——effective c++学习笔记
- 玩过,但你知道么?俄罗斯方块的旋转算法。。。
- ORACLE 数据库逻辑备份 简单 EXP/IMP
- 28避免返回handles指向对象内部成分——effective c++