包含vb点虐 鼠标双击事件的词条

VB中怎样模拟鼠标双击操作?

当然可以啊。

超过十年行业经验,技术领先,服务至上的经营模式,全靠网络和口碑获得客户,为自己降低成本,也就是为客户降低成本。到目前业务范围包括了:成都做网站、网站建设,成都网站推广,成都网站优化,整体网络托管,成都小程序开发,微信开发,App定制开发,同时也可以让客户的网站和网络营销和我们一样获得订单和生意!

使用API函数mouse_event可以模拟鼠标事件,比如左键单击、双击和右键单击等。这个实例利用此函数产生了十分有趣的效果,无论鼠标处于屏幕的任何位置,每隔一秒程序会使鼠标在那个位置单击或双击一次,这会给我们造成什么样的混乱呢?试一试就知道了。

先在程序中加入如下的声明后,就能引用mouse_event函数:

Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)

其中各个参数的意义如下表所示:

参数 意义

dwFlags Long,下表中标志之一或它们的组合

dx,dy Long,根据MOUSEEVENTF_ABSOLUTE标志,指定x,y方向的绝对位置或相对位置

cButtons Long,没有使用

dwExtraInfo Long,没有使用

dwFlags常数 意义

MOUSEEVENTF_MOVE H1,移动鼠标

MOUSEEVENTF_LEFTDOWN H2,模拟鼠标左键按下

MOUSEEVENTF_LEFTUP H4,模拟鼠标左键抬起

MOUSEEVENTF_RIGHTDOWN H8,模拟鼠标右键按下

MOUSEEVENTF_RIGHTUP H10,模拟鼠标右键抬起

MOUSEEVENTF_MIDDLEDOWN H20,模拟鼠标中键按下

MOUSEEVENTF_MIDDLEUP H40,模拟鼠标中键抬起

MOUSEEVENTF_ABSOLUTE H8000,标示是否采用绝对坐标

程序中我们这样使用mouse_event函数:

1、这里是鼠标左键按下和松开两个事件的组合即一次单击:

mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0

2、模拟鼠标右键单击事件:

mouse_event MOUSEEVENTF_RIGHTDOWN Or MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0

3、两次连续的鼠标左键单击事件 构成一次鼠标双击事件:

mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0

mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0

如上面所示如果我们要使用两个dwFlags常数的组合时,可以用Or将其连接起来。本例中我们把dx,dy参数都设为0,是指每次模拟事件的位置是鼠标的当前位置,dx,dy在没有使用MOUSEEVENTF_ABSOLUTE标志时是相对于鼠标当前位置的坐标,如果设置为使用绝对坐标,则dx,dy是相对于屏幕的坐标。

然后把这些语句放在Timer控件的Timer事件中,就能实现每一定间隔模拟一次鼠标事件了。

说明:我不是很会VC,所以只给出VB里面调用得方法。抱歉。

在VB中,表示鼠标双击的事件名是?

DblClick

当在一个对象上按下和释放鼠标按钮并再次按下和释放鼠标按钮时,该事件发生。

对于窗体而言,当双击被禁用的控件或窗体的空白区域时,DblClick 事件发生。对于控件而言,DblClick 事件在以下情形下发生:

用鼠标左键双击控件。

双击 Style 属性设置为 1(Simple) 的 ComboBox 控件中的项目,或者在 FileListBox 、 ListBox 、DBCombo 或 DBList 控件中的项目。

vb鼠标双击怎么避免触发单击

这种情况是无法避免的,因为双击是由两次单击组成的,如果你要求系统只响应双击事件不响应单击事件,那么系统在接收到键盘发来的一次单击动作时,它就会暂时停顿下来,因为它不知道紧接着会不会还有一次单击动作,如果有就是双击,如果没有就是单击。这个过程虽说是“一眨眼”,但也足以使单击事件产生明显的延时(举个极端的例子:假如你把双击的时间间隔设为10秒,那么即使没有双击,控件的单击事件也要在10秒后才触发!),会严重影响用户体验,所以系统不可能为了双击事件而自动屏蔽单击事件的。因此,通常情况下,单击事件和双击事件最好不要同时使用,也就是说用了单击就不要再用双击,反之用了双击也不要再用单击。

vb鼠标右键双击事件

先说明几点:

1.不是所有的对象,都有双击事件(zhangfeizimo在前面说过了)

2.支持双击事件的对象,在触发这个事件时,并不识别是不是右键

3.能识别右键的事件,不区分是单击还是双击

所以,如果用系统的自带单一事件,是不能直接完成你想的目的

不过,可以变通,将几个事件结合起来,就可以实现,看看下面的方法:

Dim

LastButton

As

Integer

Private

Sub

Form_DblClick()

If

LastButton

=

2

Then

Text1.Text

=

2

End

If

End

Sub

Private

Sub

Form_MouseUp(Button

As

Integer,

Shift

As

Integer,

X

As

Single,

Y

As

Single)

LastButton

=

Button

End

Sub

本文题目:包含vb点虐 鼠标双击事件的词条
路径分享:https://www.cdcxhl.com/article6/ddephig.html

成都网站建设公司_创新互联,为您提供电子商务品牌网站制作品牌网站设计全网营销推广小程序开发网站导航

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都做网站