打印

[公告] VB编程中如何锁定鼠标

VB编程中如何锁定鼠标

锁定鼠标!什么意思?有人一定不明白了,好!让笔者先说明一下吧!锁定鼠标就是让你的鼠标不能移动,不能单击,当然也不能双击,不能做任何事,反正就是让鼠标本来应有的功能都失效,就跟坏了的一样,很有趣的。你也可以尝试编写一个和你的朋友开个小小的玩笑,不过,不要忘记还原啊!OK!就让笔者用VB编程为各位演示一下这个程序吧!
  首先,新建工程,在FORM1上放上两个COMMAND命令按钮(即COMMAND1与COMMAND2),其属性都保持不变,然后请输入以下程序代码:
 
复制内容到剪贴板
代码:
 Private Declare Function ClipCursor Lib ″user32″ (lpRect As Any) As Long
  Private Type RECT
  Left As Long
  Top As Long
  Right As Long
  Bottom As Long
  End Type //以上代码请从API函数浏览器中复制即可。
  Dim DENG As RECT
  Dim SS As Boolean //是锁定或是释放的判断
  ------------
  Private Sub Form_Load() //作初始化设置。
  SS = True
  Command1.Caption = ″单击将锁定鼠标,锁定后按回车将被释放″。
  Command2.Caption = ″结束程序″
  Form1.Caption = ″锁定鼠标的演示程序″
  End Sub
  -----------
  Private Sub Command1_Click() //锁定鼠标
  If SS = True Then //如果鼠标没有被锁定则锁定它。
  DENG.Left = 0:DENG.Top = 0 //必要设置,四个都为零。
  DENG.Right = 0:DENG.Bottom = 0
  ClipCursor DENG : SS = False //锁定鼠标且重新赋值给SS。
  Else
  ClipCursor ByVal 0& : SS = True //释放鼠标且重新赋值给SS
  End If
  End Sub
  -----------
  Private Sub Command2_Click()
  End //结束程序。
  End Sub 
  现在运行一下吧(按下F5),单击COMMAND1鼠标将被锁定,锁定后要释放请按下回车键即可。当然你也可以把上面的DENG的LEFT,TOP,RIGHT,BOTTOM值都改成100(或每个都不相同的值)再试一试,相信你一定会有其他新的收获!
  注:以上程序在中文WINDOWS98, 中文VB5.0专业版中调试通过!
我的主页http://cnm.id666.com/
            http://cnm.id666.com/

TOP

呵呵,最近正在学vb,感谢楼主提供源码学习

TOP

好像还有一个专门的API……
占座查API资料先

就是这些
复制内容到剪贴板
代码:
Public Declare Sub mouse_event Lib "user32" Alias "mouse_event" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Public Const MOUSEEVENTF_ABSOLUTE = &H8000 '  absolute move 绝对移动
Public Const MOUSEEVENTF_LEFTDOWN = &H2 '  left button down 左键按下
Public Const MOUSEEVENTF_LEFTUP = &H4 '  left button up 左键弹起
Public Const MOUSEEVENTF_MIDDLEDOWN = &H20 '  middle button down 中键按下
Public Const MOUSEEVENTF_MIDDLEUP = &H40 '  middle button up 中键弹起
Public Const MOUSEEVENTF_MOVE = &H1 '  mouse move 鼠标移动(谁知道和第一个有什么区别告诉我啊~)
Public Const MOUSEEVENTF_RIGHTDOWN = &H8 '  right button down 右键按下
Public Const MOUSEEVENTF_RIGHTUP = &H10 '  right button up 右键弹起
哈~就这么多拉~大家学习的时候最好参照MSDN和API浏览器阿~

[ 本帖最后由 Christopher 于 2007-2-13 17:36 编辑 ]

TOP

我也正在学习VB,谢谢了楼主

TOP

Private Declare Function ShowCursor Lib "user32" (ByVal hwnd As Long) As Long
X = ShowCursor(False)

TOP



很多年没玩VB了,呵呵

TOP

这个挺不错的,一般是和病毒放在一起,然后再加入一些功能,使得开机鼠标就自动缩定,一般小菜就要重装系统了,哈哈!
研究VB和C++技术,X杂志忠实读者

TOP

Processed in 0.059813 second(s), 5 queries, Gzip enabled.