Veteran
جمعه 14 تیر 1392, 18:00 عصر
عرض ادب و احترام خدمت تمامی دوستان
در یک بازی(کانتر) من نیاز دارم پشت سره هم کلید SPACE رو بزنم.
اگر بخوام با کیبورد بزنم که کاری خسته کننده است.
واسه همین اومدم این تکه کد رو نوشتم
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Const VK_SPACE = &H20
Private Const KEYEVENTF_KEYUP = &H2
Private Sub Timer1_Timer()
If GetAsyncKeyState(67) = -32767 Then Timer2.Enabled = Not Timer2.Enabled
End Sub
Private Sub Timer2_Timer()
keybd_event VK_SPACE, 0, 0, 0 ' press Space
keybd_event VK_SPACE, 0, KEYEVENTF_KEYUP, 0 ' release Space
End Sub
هر موقعه کلید C فشار داده شد برنامه شروع به کار میکنه و SPACE میزنه !
اما فقط توی محیط های متنی ! مثلا notepad و یا هرجایی که بشه نوشت !
اما متاسفانه توی بازی تاثیری نداره ! یعنی اتفاقی نمیوفته ! انگار که نه انگار !
توی بازی کار نمیکنه !
حالا به نظرتون چیکار کنم ؟! :متفکر:
در یک بازی(کانتر) من نیاز دارم پشت سره هم کلید SPACE رو بزنم.
اگر بخوام با کیبورد بزنم که کاری خسته کننده است.
واسه همین اومدم این تکه کد رو نوشتم
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Const VK_SPACE = &H20
Private Const KEYEVENTF_KEYUP = &H2
Private Sub Timer1_Timer()
If GetAsyncKeyState(67) = -32767 Then Timer2.Enabled = Not Timer2.Enabled
End Sub
Private Sub Timer2_Timer()
keybd_event VK_SPACE, 0, 0, 0 ' press Space
keybd_event VK_SPACE, 0, KEYEVENTF_KEYUP, 0 ' release Space
End Sub
هر موقعه کلید C فشار داده شد برنامه شروع به کار میکنه و SPACE میزنه !
اما فقط توی محیط های متنی ! مثلا notepad و یا هرجایی که بشه نوشت !
اما متاسفانه توی بازی تاثیری نداره ! یعنی اتفاقی نمیوفته ! انگار که نه انگار !
توی بازی کار نمیکنه !
حالا به نظرتون چیکار کنم ؟! :متفکر: