鱼C论坛

 找回密码
 立即注册
查看: 3579|回复: 0

[API档案] ClientToScreen

[复制链接]
发表于 2015-9-8 00:51:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
函数功能:

ClientToScreen 函数用于将一个点的客户区坐标转换为屏幕坐标。


API 函数原型:
BOOL ClientToScreen( 
  HWND hWnd, 
  LPPOINT lpPoint
);

参数解析:

参数 含义
hWnd 指定窗口的句柄
lpPoint 1. 指向 POINT 结构的长指针,POINT 结构为待转换的客户区坐标
2. 如果函数调用成功,转换后的新坐标将覆盖该结构


返回值:

1. 如果函数调用成功,返回非 0 值;

2. 如果函数调用失败,返回 0;

3. 调用 GetLastError 函数获得详细的错误信息。


举个栗子:

下边的代码示例将鼠标或手写笔点击的坐标转换为屏幕坐标,并采用新的坐标进行计算。
    switch (message)
    {
        case WM_LBUTTONDOWN:
        case WM_RBUTTONDOWN:
            pt.x = LOWORD(lParam);
            pt.y = HIWORD(lParam);
            ClientToScreen( hStatusWnd, &pt );
            SetCapture(hStatusWnd);
            GetWindowRect(hStatusWnd,&drc);
            ptdif.x = pt.x - drc.left;
            ptdif.y = pt.y - drc.top;
            break;
    }

备注:

ClientToScreen 函数将用屏幕坐标代替指向客户区坐标的 POINT 结构。新坐标的原点取决于窗口的布局。对于从左到右布局的窗口,新的屏幕坐标是相对于屏幕的左上角;对于从右到左布局的窗口,新的屏幕坐标是相对于屏幕的右上角。所有的坐标均使用设备单位(像素)。

【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-18 00:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表