ورود

View Full Version : سوال: کلیک کردن موس



www.pc3enter.tk
جمعه 16 فروردین 1392, 22:20 عصر
سلام دوستان

می خواستم بدانم چه طوری می شود کلید موس را ارسال کرد(کلیک کردن)

منظور اینکه ما یک تایمر داریم بعد داخل اون هر 30 ثانیه یک بار کلیک موس ارسال بشه
یک چیزی تو مایه ی sendkeys

البته من هر جا موسم را تکان می دهم ان هم کیک خودش را ارسال کنه

ممنون باتشکر

محسن واژدی
شنبه 17 فروردین 1392, 14:34 عصر
سلام علیکم
یه تایمر با نام Timer1 بر روی فرم قرار بدین و کد زیر را در فرم جایگزین و اجرا کنید:
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)
Const MOUSEEVENTF_LEFTDOWN = &H2 ' left button down
Const MOUSEEVENTF_LEFTUP = &H4 ' left button up
Const MOUSEEVENTF_MIDDLEDOWN = &H20 ' middle button down
Const MOUSEEVENTF_MIDDLEUP = &H40 ' middle button up
Const MOUSEEVENTF_RIGHTDOWN = &H8 ' right button down
Const MOUSEEVENTF_RIGHTUP = &H10 ' right button up

Private Sub Timer1_Timer()
Call mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
Call mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
End Sub
Private Sub Form_Load()
Timer1.Interval = 1000
Timer1 = True
End Sub


برای کلیک وسط و کلیک راست از ثابت های بالا استفاده کنید

موفق باشید

www.pc3enter.tk
شنبه 17 فروردین 1392, 18:13 عصر
ممنون

حالا یک سوال دیگه حالا من می خوام وقتی کلیک راست می کنم مثلا برنامه یا تايمر قطع بشه

محسن واژدی
شنبه 17 فروردین 1392, 18:37 عصر
میتونیم از apiی GetAsyncKeyState استفاده کنیم، کد زیر داخل یک تایمر بررسی کنید:
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Private Sub Timer1_Timer()
If GetAsyncKeyState(vbKeyRButton) <> 0 Then
MsgBox "Mouse RKey Pressed...", vbInformation
End If
End Sub

در کد بالا وقتی کلید راست میکنیم پیام ظاهر میشه

موفق باشید

www.pc3enter.tk
شنبه 06 اردیبهشت 1393, 14:44 عصر
ممنونم
حلا اگر بخواهیم مثلا اسکرول پایین را یک حلقه بدیم پایین باید چه کار کنیم
(مثلا وقتی که خودت در این صفحه هستی اسکرول پایین می دهی پایین تا صفحه اینترنت هم بیاید پایین )
باتشکر