VB事件的鼠标事件
鼠标事件是Visual Basic编程中最常用到的事件,多数控件都支持鼠标操作,因此对鼠 标事件进行编程是非常重要的。鼠标事件主要有以下几种:Click:单击事件,即单击鼠标时发生的事件。DblClick:双击事件,即双击鼠标时发生的事件。MouseDown:鼠标按下时发生的事件。MouseUp:鼠标抬起时发生的事件。MouseMove:鼠标移动时发生的事件,对某控件的此事件进行编程,则当鼠标移过此控件时就会触发此事件,执行其相应代码。鼠标事件的发生顺序是:(1)首先发生的是MouseMove事件,当鼠标移动时,将会连续触发MoouseMove事件。(2)当鼠标按下时发生MouseDown事件。(3)鼠标松开时发生MouseUp事件。(4)如果按住的是鼠标左键,则Click事件在MouseUp之后发生。双击鼠标时事件发生顺序是:(1)当鼠标按下时发生MouseDown事件。(2)鼠标松开时发生MouseUp事件。(3)单击鼠标发生Click事件。(4)双击鼠标发生DblClick事件。(5)完成鼠标双击时发生MouseUp事件。在上面所列出的这些事件中,最常用到的就是Click事件和DblClcik事件,MouseMove和 douseUp事件不太经常用,一般用在需要对鼠标进行处理的地方。如:对于最常见的命令按钮,通常情况下我们使用Click事件;而在进行画图的时候, 例如画一条直线,必须先按住鼠标左键,然后拖动鼠标,再松开鼠标。在此过程中,首先触发MouseDown事件,我们可以在此事件中记录鼠标的开始位置, 再对MouseUp事件进行编程,以记录鼠标的结束位置;其中还要对MouseMoove事件进行编程,以在移动过程中进行处理画图操作,而不是 Click或DblClick事件。鼠标的单击事件定义如下:Sub Click()End Sub双击事件定义如下:Sub DblClick()End Sub对于MouseDown和MouseUp事件,它们的定义要复杂的多。对于MouseUp事件,其定义如下:Private Sub Labell _MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)End S在上面的参数中,Button As Integer定义了参数Button,该参数是用于确定按下的是鼠标的左键,右键,还是中键,其取值如下表所示。常量 数值 说明VbleftButton 1 按下鼠标左键VbRightButton 2 按下鼠标右键VbMiddleButton 4 按下鼠标中键Shift As Integer定义整型参数Shift,该参数用于确定键盘上Shift键、Ctrl键、Alt 键是否被按下,其取值如下表所示。 常量 数值 说明 VbShiftMask 1 按下Shift键 VbCtrlMask 2 按下Ctrl键 VbAltMask 4 按下Alt键 要判断是哪个键被按下了,要由相应的程序代码来完成。如:Private Sub Labell MouseUp(Button AS Integer,Shift As Integer,X aS Sing , Y as Single)If Button=VbRightButton ThenMsgbox(“你按下去的是鼠标右键”)End IfEnd Sub此段代码在鼠标抬起时执行,程序中用If条件判断语句来判断究竟是哪个键被按当Button=VbRightButton成立时,即鼠标右键被按下,这时可以执行相应的操作。Private Sub Labell MouseUp(Button As Integer,Shift As Integer,X as Sin2 Single)If Shift=2 ThenMsgbox(“单击鼠标时Ctrl键被按下”)EndIfEnd Sub这段代码在执行过程中判断当鼠标抬起时键盘上哪个键被按了下去。如上表说明,当Shift值为2时,表示Ctrl键被按了下去。由上面的例子可以看出我们可以对鼠标进行一些判断,然后执行一些特殊操作,但用起来通常比较麻烦。
不玩游戏正常,切换游戏出来鼠标跑向右上方(不受控制),切换进去一切正常,我玩传奇,光电鼠标,WIN7系
那是因为分辨率的问题。。传奇哪个游戏很老了游戏本身分辨率就不高。。你用WIN7电脑一定不会次,大的分辨率一切到小的分辨率电脑的显卡分辨率没有调整过来。打个比方比如。一张大纸上放了一个球。。突然大纸边成小纸了。。那球是不是就在小纸以外,所以鼠标才会一直由上。。解决方法吧电脑的分辨率调低了试一试。。要不就去找一个调分辨率的软件。有这种软件我以前也有这种问题。。但忘了名字了