为什么使用按位运算符来检查鼠标点击?

时间:2010-07-11 05:36:19

标签: .net mouse bit-manipulation

我通常会编写以下内容来处理鼠标右键单击。

if(e.Button == MouseButtons.Right)    {    }

但是,我看到人们这样做。有人可以告诉我他们为什么这样做吗?有什么好处?

if((e.Button& MouseButtons.Right)== MouseButtons.Right)    {    }

1 个答案:

答案 0 :(得分:3)

我认为没有理由在(e.Button & MouseButtons.Right) == MouseButtons.Right事件处理程序中使用MouseDown表达式,但在MouseMove事件处理程序中更有意义。当用户按下几个按钮将光标移到控件上时,此代码会检测是否按下了鼠标右键(也可以按下其他按钮),而e.Button == MouseButtons.Right表示只按下了右键。