Bonjour !!
Est-ce que vous savez comment faire pour que la touche AltGr éffectue une action tant qu'elle reste appuyée ?
Je m'éxplique, voici mon bout de code :
Si je met une autre VK que RMENU ( Altgr), l'envoi sendkey se fait en boucle tant que le bouton reste appuyé, hors avec RMENU, l'action ne se fait qu'une fois, et pour réenvoyer la séquence de touches aux programmes je suis obligé de redonner d'abord le focus à mon programe et ensuite de le redonner à la cible.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 Option Strict Off Option Explicit On Friend Class main Inherits System.Windows.Forms.Form Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Integer) As Short Public Const VK_RMENU As Long = &HA5 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Timer1.Enabled = False End Sub Private Sub Start_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Start.Click Me.WindowState = System.Windows.Forms.FormWindowState.Minimized Timer1.Enabled = True Timer1.Interval = 80 End Sub Private Sub Timer1_Tick(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Timer1.Tick If GetAsyncKeyState(VK_RMENU) Then System.Windows.Forms.SendKeys.Send("Ma séquence de touche") End Sub End Class
Une idée ?
Merci d'avance !
De plus, j'en profite pour vous demander si quelqu'un sait pourquoi mon programme fonctionne partout, meme dans les menus de l'application cible qui est un jeu, mais pas dans la partie du jeu lui meme ? (jeu en plein écran utilisant directdraw)
Partager