注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

火力光波的博客

火一般的热情 光一样的速度

 
 
 

日志

 
 

VB 6 鼠标事件图解  

2009-10-28 00:22:19|  分类: VB6编程 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

VB 6 鼠标事件图解


鼠标事件有共有5种:
mousedown    按下鼠标
mouseup        放开鼠标
mousemove    移动鼠标光标
click               单击
dblclick           双击

1. Click事件与DblClick事件

双击窗体打开代码窗口,在事件选择框中选择Click、DblClick,则Click事件过程的框架就会出现在代码编辑区中。
窗体的Click事件过程的形式:
   
Private Sub Form_Click()
    End Sub
窗体的DblClick事件过程的形式:
   
Private Sub Formes DblClick()
    End Sub
在该事件过程中添加一段代码,运行程序时,当使用鼠标单击、双击窗体时,则该段代码就会被执行。
注意:双击鼠标会同时触发Click事件与Db1Click事件,即在程序运行时,当用户双击窗体时,则Click事件过程与Db1Click事件过程都将被执行。
实例1.

2. MouseDown事件与MouseUp事件

事件过程的形式分别如下:
   
Private Sub Form_McuseDown(Button As Integer,Shift As Integer,x As Single,Y As Single)
    End Sub
    Private Sub Form_MouseUp(Button As Integer,shift As Integer,X As Single,Y As Single)
    End Sub
以上都含有四个参数,其中:
Button,用来判断用户按下的是鼠标的哪一个键,可取1、2、4三个值,分别代表左键、右键和中间键。
Shift,   用来判断是否开启Shift, Ctrl或Alt键构成组合状态,可取0-7任意整数。
X、Y,  这两个值对应于当前鼠标的位置,采用ScaleMode属性指定的位置。

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

实例2.识别用户所按的鼠标键
双击窗体→选择McuseDown事件:

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

输入响应代码:
If Button=1 Then Print"鼠标左键被按下"
If Button=2 Then Print"鼠标右键被按下"

Print方法是窗体的一个很重要的方法,在很多实例中都使用到了该方法。

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

运行效果:

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

实例3.判断Shift, Ctrl或Alt键是否开启
双击窗体→选择McuseDown事件→输入响应代码:
If Shift=1 And Button=1 Then Print"同时按下Shift和左键"
If Shift=2 And Button=2 Then Print"同时按下Ctrl和右键"
If Shift=4 And Button=1 Then Print"同时按下Alt和左键"
If Shift=3 And Button=2 Then Print"同时按下Ctrl、Shift和右键"
If Shift=5 And Button=1 Then Print"同时按下Shift、Alt和左键"
If Shift=6 And Button=2 Then Print"同时按下Alt、Ctrl和右键"
If Shift=7 And Button=1 Then Print"同时按下Shift、Ctrl、Alt和左键"

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

运行效果:

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

实例4.显示鼠标按下的坐标位置
在窗体上添加一个标签Label1

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

设AutoSize属性为True,清除Caption 中的Label1

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客      VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

双击窗体,选择McuseDown事件

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

输入响应代码:
Label1.Caption=""
Label1.Left=X-50
Label1.Top= Y-50
Label1.Caption="当前位置:X= "& X & " Y=" & Y

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

运行效果:

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

 

 3. MouseMove事件

窗体的MouseMove事件过程的形式:
    Private Sub Form_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single)
    End Sub
参数的含义及其用法与上面完全相同。

实例5.探测鼠标移动的坐标位置
在窗体上添加一个标签→设AutoSize属性为True→清除Caption 中的Label1→移到左上角

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

双击窗体→选择MouseMove事件

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

输入响应代码:
Label1.Caption="当前位置:X= "& X & " Y=" & Y

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

运行效果:
在窗体中移动鼠标,则在左上角态显示出鼠标的位置。

VB 6 鼠标事件图解 - 火力光波 - 火力光波的博客 

  评论这张
 
阅读(1684)| 评论(9)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017