中易网

关于VB中弹出菜单和Button的疑问

答案:1  悬赏:20  
解决时间 2021-01-11 08:10
  • 提问者网友:寂寞梧桐
  • 2021-01-10 08:44
关于VB中弹出菜单和Button的疑问
最佳答案
  • 二级知识专家网友:北城痞子
  • 2021-01-10 09:42
vbRightButton是VB定义的一个常量,它的值等于2,也就是说,上面那句If判断永远是真,所以只要有鼠标单击,就会执行if块中的弹出操作.

把常量换成字面量,你就明白了:
If Button = 2 Or vbRightButton Then

相当于:
If Button = 2 Or 2 Then

所以应该去掉vbRightButton,才能达到预期的效果.当然为了代码好理解,可以使用这个常量:
If Button = vbRightButton Then

这样就是表示,当Button等于右键单击时操作If中的代码.追问VbRightButton 不是右击的意思吗?用的是or逻辑 怎么会永远是真呢。这还没明白。请在解释一下!这句语句在运行时怎么跟左击联系上了?追答vbrightbutton不是表示右击,它的意思是一个常量,也就是一个数字.它和2是一样的.用这个名称是方便程序员记忆,你说让你记Button取值哪个表示右击,你觉得用2好记还是用vbrightbutton好记?用Or,更好理解了吧?如果Button=1时,继续判断后面的vbrightbutton,它的值永远是2,2是大于0的数字,在逻辑判断里,它表示true,所以这个if语句结果为真,因为不管Button结果是多少,都因为vbrightbutton而使得这个if为真,都会执行if中的弹出操作.追问哦,明白了,非常感谢!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息