摘要:連點程式...
Public Class frmHio
Inherits Form
Private mbStart As Boolean = False
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, _
ByVal dx As Long, _
ByVal dy As Long, _
ByVal cButtons As Long, _
ByVal dwExtraInfo As Long)
'dwFlags Long,下表中標誌之一或它們的組合
'dx,dy Long,根據MOUSEEVENTF_ABSOLUTE標誌,指定x,y方向的絕對位置或相對位置
'cButtons Long,沒有使用
'dwExtraInfo Long,沒有使用
'dwFlags常數 意義
Const MOUSEEVENTF_LEFTDOWN As Integer = &H2 '模擬鼠標左鍵按下
Const MOUSEEVENTF_LEFTUP As Integer = &H4 '模擬鼠標左鍵抬起
Const MOUSEEVENTF_MIDDLEDOWN As Integer = &H20 '模擬鼠標中鍵按下
Const MOUSEEVENTF_MIDDLEUP As Integer = &H40 '模擬鼠標中鍵抬起
Const MOUSEEVENTF_MOVE As Integer = &H1 '移動鼠標
Const MOUSEEVENTF_ABSOLUTE As Integer = &H8000 '標示是否採用絕對坐標
Const MOUSEEVENTF_RIGHTDOWN As Integer = &H8 '模擬鼠標右鍵按下
Const MOUSEEVENTF_RIGHTUP As Integer = &H10 '模擬鼠標右鍵抬起
Public Enum enuMouseButton
MB_Left = Keys.RButton
MB_Right = Keys.LButton
MB_Middle = Keys.MButton
End Enum
Private Enum enuMouseAction
MA_MouseDown = 1
MA_MouseUp = 2
MA_MouseClick = MA_MouseDown + MA_MouseUp
End Enum
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Timer1.Start()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If mbStart = True Then
Select Case True
Case Me.optLeft.Checked
' 1、這裡是鼠標左鍵按下和鬆開兩個事件的組合即一次單擊:
mouse_event(MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
Case Me.optRight.Checked
' 2、模擬鼠標右鍵單擊事件:
mouse_event(MOUSEEVENTF_RIGHTDOWN Or MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0)
End Select
End If
'Call keybd_event(Keys.Left, 0, 0, 0)
'Call keybd_event(Keys.Left, 0, 0, 0)
'Call keybd_event(Keys.C, 0, 1, 0)
'Call keybd_event(Keys.M, 0, 1, 0)
'Call keybd_event(Keys.B, 0, 1, 0)
'Call keybd_event(Keys.N, 0, 1, 0)
'Call keybd_event(Keys.X, 0, 0, 0)
'Call keybd_event(Keys.Y, 0, 2, 0)
'Sleep(10)
'Call keybd_event(Keys.RButton, 0, 0, 0)
'Call keybd_event(Keys.RButton, 0, 1, 0)
'Sleep(10)
'Call keybd_event(Keys.RButton, 0, 1, 0)
'Call keybd_event(Keys.RButton, 0, 2, 0)
'Sleep(1000)
'SendKeys.Send("CAPSLOCK")
' 3、兩次連續的鼠標左鍵單擊事件 構成一次鼠標雙擊事件:
' mouse_event(MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
'mouse_event(MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
End Sub
Private Sub cmdStart_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdStart.Click
mbStart = True
Dim liSecond As Double = 0
Try
liSecond = CDbl(Me.txtSecond.Text)
Catch ex As Exception
MsgBox("請輸入秒數(可小數)")
Me.txtSecond.Focus()
Exit Sub
End Try
Me.Timer1.Interval = CInt(liSecond * 1000)
Me.Timer1.Start()
End Sub
Private Sub cmdStop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdStop.Click
mbStart = False
Me.Timer1.Stop()
End Sub
End Class
------------------
熱愛生命 喜愛新奇 有趣的事物
過去 是無法改變
將來 卻能夠創造
希望使大家生活更便利
世界更美好
a guy who loves IT and life
Private
Private