13 个解决方案
#1
mouseMove
public boolean mouseMove(Event evt, int x, int y);
Responds to the mouse being moved within the control (with the mouse button unpressed).
Return Value:
Returns false.
Parameter Description
evt The event posted to the control.
x The x coordinate of the event.
y The y coordinate of the event.
public boolean mouseMove(Event evt, int x, int y);
Responds to the mouse being moved within the control (with the mouse button unpressed).
Return Value:
Returns false.
Parameter Description
evt The event posted to the control.
x The x coordinate of the event.
y The y coordinate of the event.
#2
MouseMove 事件
此事件在移动鼠标时发生。
语法
Private Sub Form_MouseMove(button As Integer, shift As Integer, x As Single, y As Single)
Private Sub MDIForm_MouseMove(button As Integer, shift As Integer, x As Single, y As Single)
Private Sub object_MouseMove([index As Integer,] button As Integer, shift As Integer, x As Single, y As Single)
MouseMove 事件语法包含下列部分:
部分 描述
object 一个对象表达式,其值是“应用于”列表中的一个对象。
index 一个整数,用来唯一地标识一个在控件数组中的控件。
button 一个整数,它对应鼠标各个按钮的状态,如果某个按钮按下,其中就有一个二进制位被设置。button 参数是具有相应于左按钮(位 0),右按钮(位 1),以及中间按钮(位 2)的一个位字段。这些位的值分别等于 1,2,和 4。它指示这些鼠标按钮的整体状态;三个二进制位中的一些、全部、或一个也没有被设置,指示这些按钮中的一些、全部、或一个也没有被按下。
shift 一个整数,该整数相应于 SHIFT,CTRL,和 ALT 键的状态。某键被按下使得一个二进制位被设置。shift 参数是具有相应于 SHIFT 键(位 0),CTRL 键(位 1),以及 ALT 键(位 2)最少二进制位的一个位字段。这些位的值分别等于 1,2,和 4。shift 参数指示这些键的状态。这些位中可能有一些、全部、或者一个也没有被设置,指示这些键中的一些、全部、或者一个也没有被按下。例如,CTRL 和 ALT 键都被按下,则 shift 的值就是 6。
x, y 一个指定鼠标指针当前位置的数。x 和 y 的值所表示的总是通过该对象 ScaleHeight, ScaleWidth, ScaleLeft,和 ScaleTop 属性所建立的坐标系统的方式。
说明
MouseMove 事件伴随鼠标指针在对象间移动时连续不断地产生。除非有另一个对象捕获了鼠标,否则,当鼠标位置在对象的边界范围内时该对象就能接收 MouseMove 事件。
要测试 button 或 shift 参数,可使用对象浏览器中的 Visual Basic (VB) 对象库中所列出的常数,用来定义该参数中的各个位:
常数(按钮) 值 描述
vbLeftButton 1 左按钮按下。
vbRightButton 2 右按钮按下。
vbMiddleButton 4 中间按钮按下。
常数(换挡) 值 描述
vbShiftMask 1 SHIFT 键按下。
vbCtrlMask 2 CTRL 键按下。
vbAltMask 4 ALT 键按下。
然后这些常数用作位屏蔽,对于按钮的各种组合,无须计算出各个组合的唯一的位字段值即可进行检测。
要测试某一条件,首先将各个结果赋给一个临时整型变量然后再与一个位屏蔽的 button 或 shift 参数进行比较。测试应当用各个参数进行 And 运算,若结果大于零,则说明该键或按钮被按下。其操作如下:
LeftDown = (Button And vbLeftButton) > 0
CtrlDown = (Shift And vbCtrlMask) > 0
然后,接下去可对结果的各种组合进行检测,其操作如下:
If LeftDown And CtrlDown Then
注意 为了对鼠标按钮按下和释放所引起的事件进行处理,可使用 MouseDown 和 MouseUp 事件过程。
MouseMove 事件的 button 参数与 MouseDown 和 MouseUp 事件的 button 参数是不同的。对于 MouseMove 事件来说,button 参数指示的是所有按钮当前的状态;一个 MouseMove 事件可指示某些、全部或没有一个按钮被按下。对于 MouseDown 和 MouseUp 事件来说,button 参数在每个事件精确地指示一个按钮。
在 MouseMove 事件中任何时侯移动窗口,都能引起层叠事件。当该窗口移动到指针下面时 MouseMove 事件将产生。即使是鼠标完全不动 MouseMove 事件也能产生。
此事件在移动鼠标时发生。
语法
Private Sub Form_MouseMove(button As Integer, shift As Integer, x As Single, y As Single)
Private Sub MDIForm_MouseMove(button As Integer, shift As Integer, x As Single, y As Single)
Private Sub object_MouseMove([index As Integer,] button As Integer, shift As Integer, x As Single, y As Single)
MouseMove 事件语法包含下列部分:
部分 描述
object 一个对象表达式,其值是“应用于”列表中的一个对象。
index 一个整数,用来唯一地标识一个在控件数组中的控件。
button 一个整数,它对应鼠标各个按钮的状态,如果某个按钮按下,其中就有一个二进制位被设置。button 参数是具有相应于左按钮(位 0),右按钮(位 1),以及中间按钮(位 2)的一个位字段。这些位的值分别等于 1,2,和 4。它指示这些鼠标按钮的整体状态;三个二进制位中的一些、全部、或一个也没有被设置,指示这些按钮中的一些、全部、或一个也没有被按下。
shift 一个整数,该整数相应于 SHIFT,CTRL,和 ALT 键的状态。某键被按下使得一个二进制位被设置。shift 参数是具有相应于 SHIFT 键(位 0),CTRL 键(位 1),以及 ALT 键(位 2)最少二进制位的一个位字段。这些位的值分别等于 1,2,和 4。shift 参数指示这些键的状态。这些位中可能有一些、全部、或者一个也没有被设置,指示这些键中的一些、全部、或者一个也没有被按下。例如,CTRL 和 ALT 键都被按下,则 shift 的值就是 6。
x, y 一个指定鼠标指针当前位置的数。x 和 y 的值所表示的总是通过该对象 ScaleHeight, ScaleWidth, ScaleLeft,和 ScaleTop 属性所建立的坐标系统的方式。
说明
MouseMove 事件伴随鼠标指针在对象间移动时连续不断地产生。除非有另一个对象捕获了鼠标,否则,当鼠标位置在对象的边界范围内时该对象就能接收 MouseMove 事件。
要测试 button 或 shift 参数,可使用对象浏览器中的 Visual Basic (VB) 对象库中所列出的常数,用来定义该参数中的各个位:
常数(按钮) 值 描述
vbLeftButton 1 左按钮按下。
vbRightButton 2 右按钮按下。
vbMiddleButton 4 中间按钮按下。
常数(换挡) 值 描述
vbShiftMask 1 SHIFT 键按下。
vbCtrlMask 2 CTRL 键按下。
vbAltMask 4 ALT 键按下。
然后这些常数用作位屏蔽,对于按钮的各种组合,无须计算出各个组合的唯一的位字段值即可进行检测。
要测试某一条件,首先将各个结果赋给一个临时整型变量然后再与一个位屏蔽的 button 或 shift 参数进行比较。测试应当用各个参数进行 And 运算,若结果大于零,则说明该键或按钮被按下。其操作如下:
LeftDown = (Button And vbLeftButton) > 0
CtrlDown = (Shift And vbCtrlMask) > 0
然后,接下去可对结果的各种组合进行检测,其操作如下:
If LeftDown And CtrlDown Then
注意 为了对鼠标按钮按下和释放所引起的事件进行处理,可使用 MouseDown 和 MouseUp 事件过程。
MouseMove 事件的 button 参数与 MouseDown 和 MouseUp 事件的 button 参数是不同的。对于 MouseMove 事件来说,button 参数指示的是所有按钮当前的状态;一个 MouseMove 事件可指示某些、全部或没有一个按钮被按下。对于 MouseDown 和 MouseUp 事件来说,button 参数在每个事件精确地指示一个按钮。
在 MouseMove 事件中任何时侯移动窗口,都能引起层叠事件。当该窗口移动到指针下面时 MouseMove 事件将产生。即使是鼠标完全不动 MouseMove 事件也能产生。
#3
都貼msdn,絕!
#4
有莫伊姐姐在我就不多说了
#5
hehe
#6
晕,猜也猜着啦~
x,y当然是坐标啦,谁的坐标,鼠标的呗~
x,y用来描述鼠标的位置
x,y当然是坐标啦,谁的坐标,鼠标的呗~
x,y用来描述鼠标的位置
#7
就是!完全同意楼上的
#8
是在控件中的坐标,还是在窗体中的,以哪个的点为原点(坐标点)
#9
x,y用来描述鼠标在控件内部的相对坐标。
你用一个picturebox控件,在用scale改变一下坐标系,
在MouseMove事件中加上:
me.caption=str(x)+","+str(y)
运行你的程序,看看窗体的标题你就明白了。
你用一个picturebox控件,在用scale改变一下坐标系,
在MouseMove事件中加上:
me.caption=str(x)+","+str(y)
运行你的程序,看看窗体的标题你就明白了。
#10
x,y就是鼠标当前所处控件或窗体的相对坐标哦,就相当于数轴哦
#11
//回复人: mine2000() ( ) 信誉:100 2004-05-09 09:02:00 得分:0
//是在控件中的坐标,还是在窗体中的,以哪个的点为原点(坐标点)
要知道详细的就看 lsftest() 的回复,没法再详细了吧
//是在控件中的坐标,还是在窗体中的,以哪个的点为原点(坐标点)
要知道详细的就看 lsftest() 的回复,没法再详细了吧
#12
ft这也问……楼主是来散分得吧
#13
x,y就是鼠标当前所处控件或窗体的相对坐标哦,就相当于数轴哦
#1
mouseMove
public boolean mouseMove(Event evt, int x, int y);
Responds to the mouse being moved within the control (with the mouse button unpressed).
Return Value:
Returns false.
Parameter Description
evt The event posted to the control.
x The x coordinate of the event.
y The y coordinate of the event.
public boolean mouseMove(Event evt, int x, int y);
Responds to the mouse being moved within the control (with the mouse button unpressed).
Return Value:
Returns false.
Parameter Description
evt The event posted to the control.
x The x coordinate of the event.
y The y coordinate of the event.
#2
MouseMove 事件
此事件在移动鼠标时发生。
语法
Private Sub Form_MouseMove(button As Integer, shift As Integer, x As Single, y As Single)
Private Sub MDIForm_MouseMove(button As Integer, shift As Integer, x As Single, y As Single)
Private Sub object_MouseMove([index As Integer,] button As Integer, shift As Integer, x As Single, y As Single)
MouseMove 事件语法包含下列部分:
部分 描述
object 一个对象表达式,其值是“应用于”列表中的一个对象。
index 一个整数,用来唯一地标识一个在控件数组中的控件。
button 一个整数,它对应鼠标各个按钮的状态,如果某个按钮按下,其中就有一个二进制位被设置。button 参数是具有相应于左按钮(位 0),右按钮(位 1),以及中间按钮(位 2)的一个位字段。这些位的值分别等于 1,2,和 4。它指示这些鼠标按钮的整体状态;三个二进制位中的一些、全部、或一个也没有被设置,指示这些按钮中的一些、全部、或一个也没有被按下。
shift 一个整数,该整数相应于 SHIFT,CTRL,和 ALT 键的状态。某键被按下使得一个二进制位被设置。shift 参数是具有相应于 SHIFT 键(位 0),CTRL 键(位 1),以及 ALT 键(位 2)最少二进制位的一个位字段。这些位的值分别等于 1,2,和 4。shift 参数指示这些键的状态。这些位中可能有一些、全部、或者一个也没有被设置,指示这些键中的一些、全部、或者一个也没有被按下。例如,CTRL 和 ALT 键都被按下,则 shift 的值就是 6。
x, y 一个指定鼠标指针当前位置的数。x 和 y 的值所表示的总是通过该对象 ScaleHeight, ScaleWidth, ScaleLeft,和 ScaleTop 属性所建立的坐标系统的方式。
说明
MouseMove 事件伴随鼠标指针在对象间移动时连续不断地产生。除非有另一个对象捕获了鼠标,否则,当鼠标位置在对象的边界范围内时该对象就能接收 MouseMove 事件。
要测试 button 或 shift 参数,可使用对象浏览器中的 Visual Basic (VB) 对象库中所列出的常数,用来定义该参数中的各个位:
常数(按钮) 值 描述
vbLeftButton 1 左按钮按下。
vbRightButton 2 右按钮按下。
vbMiddleButton 4 中间按钮按下。
常数(换挡) 值 描述
vbShiftMask 1 SHIFT 键按下。
vbCtrlMask 2 CTRL 键按下。
vbAltMask 4 ALT 键按下。
然后这些常数用作位屏蔽,对于按钮的各种组合,无须计算出各个组合的唯一的位字段值即可进行检测。
要测试某一条件,首先将各个结果赋给一个临时整型变量然后再与一个位屏蔽的 button 或 shift 参数进行比较。测试应当用各个参数进行 And 运算,若结果大于零,则说明该键或按钮被按下。其操作如下:
LeftDown = (Button And vbLeftButton) > 0
CtrlDown = (Shift And vbCtrlMask) > 0
然后,接下去可对结果的各种组合进行检测,其操作如下:
If LeftDown And CtrlDown Then
注意 为了对鼠标按钮按下和释放所引起的事件进行处理,可使用 MouseDown 和 MouseUp 事件过程。
MouseMove 事件的 button 参数与 MouseDown 和 MouseUp 事件的 button 参数是不同的。对于 MouseMove 事件来说,button 参数指示的是所有按钮当前的状态;一个 MouseMove 事件可指示某些、全部或没有一个按钮被按下。对于 MouseDown 和 MouseUp 事件来说,button 参数在每个事件精确地指示一个按钮。
在 MouseMove 事件中任何时侯移动窗口,都能引起层叠事件。当该窗口移动到指针下面时 MouseMove 事件将产生。即使是鼠标完全不动 MouseMove 事件也能产生。
此事件在移动鼠标时发生。
语法
Private Sub Form_MouseMove(button As Integer, shift As Integer, x As Single, y As Single)
Private Sub MDIForm_MouseMove(button As Integer, shift As Integer, x As Single, y As Single)
Private Sub object_MouseMove([index As Integer,] button As Integer, shift As Integer, x As Single, y As Single)
MouseMove 事件语法包含下列部分:
部分 描述
object 一个对象表达式,其值是“应用于”列表中的一个对象。
index 一个整数,用来唯一地标识一个在控件数组中的控件。
button 一个整数,它对应鼠标各个按钮的状态,如果某个按钮按下,其中就有一个二进制位被设置。button 参数是具有相应于左按钮(位 0),右按钮(位 1),以及中间按钮(位 2)的一个位字段。这些位的值分别等于 1,2,和 4。它指示这些鼠标按钮的整体状态;三个二进制位中的一些、全部、或一个也没有被设置,指示这些按钮中的一些、全部、或一个也没有被按下。
shift 一个整数,该整数相应于 SHIFT,CTRL,和 ALT 键的状态。某键被按下使得一个二进制位被设置。shift 参数是具有相应于 SHIFT 键(位 0),CTRL 键(位 1),以及 ALT 键(位 2)最少二进制位的一个位字段。这些位的值分别等于 1,2,和 4。shift 参数指示这些键的状态。这些位中可能有一些、全部、或者一个也没有被设置,指示这些键中的一些、全部、或者一个也没有被按下。例如,CTRL 和 ALT 键都被按下,则 shift 的值就是 6。
x, y 一个指定鼠标指针当前位置的数。x 和 y 的值所表示的总是通过该对象 ScaleHeight, ScaleWidth, ScaleLeft,和 ScaleTop 属性所建立的坐标系统的方式。
说明
MouseMove 事件伴随鼠标指针在对象间移动时连续不断地产生。除非有另一个对象捕获了鼠标,否则,当鼠标位置在对象的边界范围内时该对象就能接收 MouseMove 事件。
要测试 button 或 shift 参数,可使用对象浏览器中的 Visual Basic (VB) 对象库中所列出的常数,用来定义该参数中的各个位:
常数(按钮) 值 描述
vbLeftButton 1 左按钮按下。
vbRightButton 2 右按钮按下。
vbMiddleButton 4 中间按钮按下。
常数(换挡) 值 描述
vbShiftMask 1 SHIFT 键按下。
vbCtrlMask 2 CTRL 键按下。
vbAltMask 4 ALT 键按下。
然后这些常数用作位屏蔽,对于按钮的各种组合,无须计算出各个组合的唯一的位字段值即可进行检测。
要测试某一条件,首先将各个结果赋给一个临时整型变量然后再与一个位屏蔽的 button 或 shift 参数进行比较。测试应当用各个参数进行 And 运算,若结果大于零,则说明该键或按钮被按下。其操作如下:
LeftDown = (Button And vbLeftButton) > 0
CtrlDown = (Shift And vbCtrlMask) > 0
然后,接下去可对结果的各种组合进行检测,其操作如下:
If LeftDown And CtrlDown Then
注意 为了对鼠标按钮按下和释放所引起的事件进行处理,可使用 MouseDown 和 MouseUp 事件过程。
MouseMove 事件的 button 参数与 MouseDown 和 MouseUp 事件的 button 参数是不同的。对于 MouseMove 事件来说,button 参数指示的是所有按钮当前的状态;一个 MouseMove 事件可指示某些、全部或没有一个按钮被按下。对于 MouseDown 和 MouseUp 事件来说,button 参数在每个事件精确地指示一个按钮。
在 MouseMove 事件中任何时侯移动窗口,都能引起层叠事件。当该窗口移动到指针下面时 MouseMove 事件将产生。即使是鼠标完全不动 MouseMove 事件也能产生。
#3
都貼msdn,絕!
#4
有莫伊姐姐在我就不多说了
#5
hehe
#6
晕,猜也猜着啦~
x,y当然是坐标啦,谁的坐标,鼠标的呗~
x,y用来描述鼠标的位置
x,y当然是坐标啦,谁的坐标,鼠标的呗~
x,y用来描述鼠标的位置
#7
就是!完全同意楼上的
#8
是在控件中的坐标,还是在窗体中的,以哪个的点为原点(坐标点)
#9
x,y用来描述鼠标在控件内部的相对坐标。
你用一个picturebox控件,在用scale改变一下坐标系,
在MouseMove事件中加上:
me.caption=str(x)+","+str(y)
运行你的程序,看看窗体的标题你就明白了。
你用一个picturebox控件,在用scale改变一下坐标系,
在MouseMove事件中加上:
me.caption=str(x)+","+str(y)
运行你的程序,看看窗体的标题你就明白了。
#10
x,y就是鼠标当前所处控件或窗体的相对坐标哦,就相当于数轴哦
#11
//回复人: mine2000() ( ) 信誉:100 2004-05-09 09:02:00 得分:0
//是在控件中的坐标,还是在窗体中的,以哪个的点为原点(坐标点)
要知道详细的就看 lsftest() 的回复,没法再详细了吧
//是在控件中的坐标,还是在窗体中的,以哪个的点为原点(坐标点)
要知道详细的就看 lsftest() 的回复,没法再详细了吧
#12
ft这也问……楼主是来散分得吧
#13
x,y就是鼠标当前所处控件或窗体的相对坐标哦,就相当于数轴哦