【VB开源代码栏目提醒】:网学会员鉴于大家对VB开源代码十分关注,论文会员在此为大家搜集整理了“鼠标移动数据.frm”一文,供大家参考学习
VERSION 5.00
Begin VB.Form Form1
AutoRedraw = -1 'True
BackColor = &H00FFFFFF&
BorderStyle = 1 'Fixed Single
Caption = "缓冲信息"
ClientHeight = 5295
ClientLeft = 45
ClientTop = 330
ClientWidth = 7440
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
Moveable = 0 'False
ScaleHeight = 353
ScaleMode = 3 'Pixel
ScaleWidth = 496
StartUpPosition = 2 '屏幕中心
Begin VB.Image Image1
Height = 1425
Left = 1080
Picture = "鼠标移动数据.frx":0000
Stretch = -1 'True
Top = 600
Width = 1935
End
End
Attribute
VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim objDX As New DirectX7
Dim objDI As DirectInput
Dim DIDev As DirectInputDevice
Dim DIState As DIMOUSESTATE
Dim DIBufdss As DIPROPLONG
Dim DIDevData(1 To 10) As DIDEVICEOBJECTDATA
Const BufSize As Integer = 10
Dim MouseDatanum As Integer
Dim MouseEvent As Long
Implements DirectXEvent
Dim i As Integer
Private Sub Form_Load()
Me.Show
Set objDI = objDX.DirectInputCreate()
Set DIDev = objDI.CreateDevice("Guid_SysMouse")
DIDev.SetCommonDataFormat DIFORMAT_MOUSE
DIDev.SetCooperativeLevel Form1.hWnd, DISCL_FOREGROUND Or DISCL_NONEXCLUSIVE
With DIBufdss
.lHow = DIPH_DEVICE
.lData = BufSize
.lSize = Len(DIBufdss)
.lObj = 0
DIDev.SetProperty "DIPROP_BUFFERSIZE", DIBufdss
End With
MouseEvent = objDX.CreateEvent(Form1)
Call DIDev.SetEventNotification(MouseEvent)
DIDev.Acquire
End Sub
Private Sub MouseAction()
MouseDatanum = DIDev.GetDeviceData(DIDevData, DIGDD_DEFAULT)
For i = 1 To MouseDatanum
Select Case DIDevData(MouseDatanum).lOfs
Case DIMOFS_X
Image1.Left = Image1.Left + DIDevData(i).lData
Case DIMOFS_Y
Image1.Top = Image1.Top + DIDevData(i).lData
Case DIMOFS_BUTTON0
If Image1.Height < Form1.ScaleHeight - 50 Then
Image1.Height = Image1.Height * 2
Image1.Width = Image1.Width * 2
End If
Case DIMOFS_BUTTON1
If Image1.Height > 10 Then
Image1.Height = Image1.Height / 2
Image1.Width = Image1.Width / 2
End If
Case DIMOFS_BUTTON2
DIDev.Unacquire
End
End Select
Next i
End Sub
Private Sub DirectXEvent_DXCallback(ByVal eventtid As Long)
MouseAction
End Sub