VC 获取鼠标点坐标

本文介绍了如何将OnLButtonDown中获取的客户区坐标转换为窗体坐标,涉及GetSystemMetrics函数获取标题栏和对话框边框的高度和宽度,并用于修正鼠标点的横纵坐标。
摘要由CSDN通过智能技术生成

OnLButtonDown 传入的point坐标为客户区坐标,而输出矩形为窗体坐标,

point纵坐标需要加上(标题栏高度:26 和对话框高度:3)

point横坐标需要加上(对话框宽度:3)

 

 int captionHeight=GetSystemMetrics(SM_CYCAPTION);//标题栏高度
 int dlgWidth=GetSystemMetrics(SM_CXDLGFRAME );//SM_CXFIXEDFRAME相同
 int dlgHeight=GetSystemMetrics(SM_CYDLGFRAME ); //SM_CXFIXEDFRAME相同

 int x =point.x + (dlgWidth);    //point横坐标

 int y = point.y + (captionHeight + dlgHeight ); //point纵坐标

 

 

 

 

备注:**************************************
 int GetSystemMetrics(  int nIndex );
The GetSystemMetrics function retrieves various system metrics (widths and heights of display elements) 
and system configuration settings. All dimensions retrieved by GetSystemMetrics are in pixels. 

 

*************************************************

int menuHeight=GetSystemMetrics(SM_CYMENU);//菜单栏高度

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值