【发布时间】:2011-10-13 13:33:42
【问题描述】:
当 WM_LBUTTONDOWN 在 vb.net 中发送时,我想从参数中获取 x、y 位置。
我得到了这个来制作参数,但是我如何从中获得位置。
IntPtr lParam = (IntPtr)((y << 16) | x);
我的功能:
Protected Overrides Sub WndProc(ByRef m As Message)
Select Case m.Msg
Case WM_LBUTTONDOWN
'Get the X, Y from m.lparam
Case Else
MyBase.WndProc(m)
End Select
End Sub
更新:我刚试过,效果很好。
Dim pos As New System.Drawing.Point(CInt(m.LParam))
【问题讨论】:
-
非常好的 .net 人员为
Point提供了有用的 Int32 构造函数。您应该将其写成答案,而不是编辑问题。
标签: vb.net sendmessage wndproc