vb中 mouseup 与 click

vb中 mouseup 时,触发了click 事件,怎样避免呢
针对按钮时,mousedown 时,触发一个事件,mouseup 时,一个事件,但是,mouseup 时同时又触发了command_click事件,这是我不希望的

你这个问题 我几年前学vb的时候也问过

click事件 是鼠标 在一次按下+弹起的是过程 按下+弹起结束之后就会发生click事件 正如英文原意 的“滴答”声 也就是在你按下和释放鼠标之后就会发生click事件

如果你细心的话就会发现 当你按下鼠标不松手 是不会触发click事件的
这就是 mousedown和click本质的区别 mousedown是不管你松不松手 都会触发该事件

而mouseup 呢 是当你按下鼠标弹起时的事件 假如你在别处 按下鼠标 你在按钮上把鼠标弹起 那也会触发其 mouseup

那就直接点将吧 click=mousedown +mouseup
除非你不写click事件 或者触发mousedown事件不触发mouseup事件
或者不在按钮上触发mousedown事件 在别处按下鼠标 而在按钮上弹起 是不会触发mouesup事件

你仔细想想click=mousedown +mouseup
楼上的加变量根本就行不通 你如果有哪地方不明白 把问题直接发上来 直接告诉你
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-03-10
down ,up ,click 三个事件连续
如果你要不触发,就别写click
或 加变量如

dim varCanClick as boolean

sub mouseup中
if ...then
varcanclick = true
else
varcanclick=false
...
endif

click事件中

if not varcanclick then exit sub
相似回答