[bo]以下是引用 [un]tomqq[/un] 在 2008-3-3 18:12 的发言:[/bo]
请高手帮忙解决MOUSEMOVE事件中,LPARAMETERS nButton ,nShift,nXCoord,nYCoord这四个参数如何设置?
nButton
包含一个指明在鼠标移动时哪一键被按下, 如下表列出:
nButton 的鼠标键值
键 nButton 值
左鼠标键 1
右鼠标键 2
中鼠标键 4
如果鼠标移动时多于一个的鼠标键被按下, nButton 包含了鼠标键值的和。例如, 如果左和右鼠标键被按下, nButton 的值是 3。
nShift
存放一个数,它指定当按下用 nButton 指定的键时, SHIFT、CTRL 和 ALT 键的状态。
下表列出了单独修改键在 nShift 中返回的值。
nShift 的修改键值
Windows 键 值
SHIFT 1
CTRL 2
ALT 4
如果按下了一个键,就设置一个位,nShift 参数是这些位的和。低位对应于 SHIFT 键 (0 位), CTRL 键 (1 位), ALT 键 (2 位),这些位分别对应于 1,2 和 4。nShift 参数表明这些键的状态。部分、全部或没有设置三个位,表明部分、全部或没有按下三个键。例如,如果 CTRL 和 ALT 键全部按下,那么 nShift 的值为 6。
nXCoord, nYCoord
存放表单中鼠标指针当前的水平 (nXCoord) 和垂直 (nYCoord) 位置。这些坐标总是以 ScaleMode 属性设置值为度量单位,按照指定表单的坐标系统表达的。