最佳答案:
顾名思义:ScreenToClient也就是Screen(屏幕坐标) 到 Client(客户区坐标)的转换。也就是说这个函数可以把你在屏幕上鼠标的位置转换为你打开的程序的客户区的坐标(位置)。
详情介绍
顾名思义:ScreenToClient也就是Screen(屏幕坐标) 到 Client(客户区坐标)的转换。也就是说这个函数可以把你在屏幕上鼠标的位置转换为你打开的程序的客户区的坐标(位置)。
- 中文名
- ScreenToClient
- Windows NT
- 3.1及以上版本
- Windows
- 95及以上版本
- Windows CE
- 1.0及以上版本
ScreenToClient函数
函数功能:该函数把屏幕上指定点的屏幕坐标转换成用户坐标。
函数原型:BOOL ScreenToClient(HWND hWnd, LPPOINT lpPoint);
BOOL ScreenToClient(
HWNDhWnd,// handle to window
LPPOINTlpPoint// screen coordinates
);
ScreenToClient参数
hWnd
指向窗口的句柄,此窗口的用户空间将被用来转换。
lpPoint
指向POINT结构指针,该结构含有要转换的屏幕坐标。
返回值
如果函数调用成功,返回值为非零值,否则为零。
Windows NT
若想获得更多错误信息,请调用GetLastError函数。
注释
该函数应用hWnd参数标识的窗口和POINT结构给定的屏幕坐标来计算用户坐标,然后以用户坐标来替代屏幕坐标,新坐标是相对于指定窗口的领域的左上角。
速查
Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;头文件:winuser.h;库文件:user32.lib。
在VB .net中的声明方式:
Declare Function ScreenToClient Lib "user32.dll" ( _
ByValhwndAs Int32, _
ByRef lpPoint As POINTAPI) As Int32
<StructLayout(LayoutKind.Sequential)> _
Private Structure POINTAPI
Public x As Int32
Public y As Int32
End Structure
VB声明 | |
Declare Function ScreenToClient Lib "user32" Alias "ScreenToClient" (ByVal hwnd As Long, lpPoint As POINTAPI) As Long | |
说明 | |
判断屏幕上一个指定点的客户区坐标 | |
返回值 | |
Long,非零表示成功,零表示失败 | |
参数表 | |
参数 | 类型及说明 |
hwnd | Long,一个窗口的句柄,该窗口定义了要使用的客户区坐标系统 |
lpPoint | POINTAPI,屏幕坐标系统中包含了屏幕点的结构。这个函数会随同相应的客户区坐标(由hwnd决定)载入结构 |


