标题:求教一个鼠标按下事件的小疑问
只看楼主
btt6
Rank: 2
等 级:论坛游民
帖 子:46
专家分:10
注 册:2016-8-13
结帖率:47.83%
已结贴  问题点数:2 回复次数:1 
求教一个鼠标按下事件的小疑问
对于判断鼠标右键是否被按下事件里的button参数,if button=2 then    和    if (button and 2) then  为什么功能上是等价的呢,and不是说左右两边的表达式都为真才是真吗,我按下任意一个键button值都为真了啊
2016-09-29 10:53
xzlxzlxzl
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖北
等 级:贵宾
威 望:125
帖 子:1091
专家分:5825
注 册:2014-5-3
得分:2 
其实这就是vb不严谨之处造成的。
关键字“and”存在二义性,只有当参与运算的一方为bool类型时,and将作为逻辑运算符,否则是作为位运算的算术运算符,此例就是位运算的结果造成的,如果换成if (button and true) then,就会发现按鼠标左右键都有反应了,此时就是作为逻辑运算符得到的运算结果。
2016-09-29 11:23



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-469321-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.195421 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved