检测鼠标是否在使用

本文提供了一段用于检测鼠标是否在移动的VB代码实现。通过定时器定期获取鼠标的坐标,并与上一次记录的位置进行对比,以此判断鼠标是否处于活动状态。如果发现鼠标位置发生变化,则在文本框中显示“鼠标滚动”,并设置背景为红色;若鼠标未移动,则显示“鼠标静止”,背景设为绿色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下提供一套简单检测鼠标是否在使用的源码

Option Explicit
Private Type PointAPI
      X As Long
      Y As Long
End Type
Dim MousePos As PointAPI
Private Declare Function GetCursorPos Lib "user32" _
                          (lpPoint As PointAPI) As Long
Dim OldX As Long
Dim OldY As Long
Dim NewX As Long
Dim NewY As Long
Dim UnitValue As Long
Dim UnitName As String
Dim FormatStr As String
Private X0 As Long
Private Y0 As Long
Const FormatStr1 = "000000.00"
Const FormatStr2 = "0000.0000"


 

Private Sub Form_Load()
      UnitValue = 1440
      UnitName = "英寸"
      FormatStr = FormatStr1
      Timer1.Enabled = True
      GetCursorPos MousePos
      OldX = MousePos.X * Screen.TwipsPerPixelX
      OldY = MousePos.Y * Screen.TwipsPerPixelY
End Sub


 

Private Sub Timer1_Timer()
      GetCursorPos MousePos
      NewX = MousePos.X * Screen.TwipsPerPixelX
      NewY = MousePos.Y * Screen.TwipsPerPixelY
      X0 = NewX - OldX
      Y0 = NewY - OldY
      If X0 <> 0 Or Y0 <> 0 Then
            Text1 = "鼠标滚动"
            Text1.BackColor = vbRed
      Else
            Text1 = "鼠标静止"
            Text1.BackColor = vbGreen
      End If
      OldX = NewX
      OldY = NewY
End Sub

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值