热情软件屋

 

其中的 Button and 3 和 (Button and 3)=3 该如何理解


编号:QA004579
建立日期: 2002年3月15日 最后修改日期:2002年3月15日
所属类别:

司华圣:
    我用的是windows98,编程工具是VB 6.0企业版。在学习中遇到一个问题无法理解:在MouseMove 事件中判断Button状态过程如下
    
    private sub form_MouseMove(Button as integer,shift as integer,x as single,y as single)
       if Button=3 then... '第一种情形
     if Button and 3 then ... '第二种情形
     if (Button and 3)=3 then...'第三种情形
    end sub
    

    请问其中的 Button and 3 和 (Button and 3)=3 该如何理解?

回答:

    If Button and 3 Then表示只要Button和3进行二进制与不为0就满足条件。对于MouseMove事件,左键或右键之一按下就满足条件。如按下左键,Button为1,1 and 3的结果是1,不为0。如按下右键,Button为2,2 and 3的结果是2,不为0。
    If (Button and 3)=3表示只有Button和3进行二进制与后的结果等于3才满足条件。左键和右键必须同时按下才满足条件。它和第一种情况的区别在于,Shift等键如果按下,也满足条件3,但不满足条件1。

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio