想在TEXT控件上弹出自己的右键菜单,但是先弹出的总是TEXT本身的。
这个方法是搜来的。
VB codePrivate Sub txtNR_Mousedown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then txtNR.Enabled = False '屏蔽TEXT本身的右键菜单,但这个方法只有在Mousedown事件上才可以。 txtNR.Enabled = True frmEdit.PopupMenu mPop, 2 '弹出菜单 End IfEnd Sub
为什么在MouseUp事件上就不行呢?
本问题第1个回答
鼠标按下先触发的是mousedown事件 然后才是mouseup事件
因为默认是在mousedown的事件下弹出text本身的右键菜单,还没到mouseup那, 所以你要在mousedown下禁用
本问题第2个回答
先感谢回复。
不过刚才试了下,Text本身的右键菜单是在松开鼠标时弹出的,应该是mouseup事件吧。
我猜是我做的菜单先出来,把本身的菜单屏蔽了。
禁用的方法我已经找到了,谢谢。
本问题第3个回答
VB6中的mousedown事件先于click事件,click事件先于mouseup,textbox右键菜单迟于mousedown,先于mouseup,相当于处于click位置(注并不是在click位置)。
本问题第4个回答
谢谢楼上详解,我终于明白了。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。