Utilisation de l'API SendMessage

mlctrbne
Messages postés
2
Date d'inscription
dimanche 8 janvier 2006
Statut
Membre
Dernière intervention
11 janvier 2006
- 11 janv. 2006 à 14:30
PCPT
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Membre
Dernière intervention
3 février 2018
- 11 janv. 2006 à 18:54
Bonjour, je souhaite simuler une combinaison de touche (Ex : ALT + F) avec l'API SendMessage.
Comment faire ?
Je souhaite également trouver de la doc sur cette API
Merci d'avance.

3 réponses

Neo.balastik
Messages postés
796
Date d'inscription
jeudi 17 mai 2001
Statut
Membre
Dernière intervention
5 mai 2009
7
11 janv. 2006 à 14:57
Salut ;O)

Pourquoi ne pas utiliser la fonction SendKeys de VB ? -> SendKeys "%F", True

Tu peux aussi utiliser l'API keybd_event :
Pour plus d'info sur keybd_event : http://www.vbaccelerator.com/home/VB/Tips/SendKeys_using_the_API/article.asp

Exemple tiré de l'API-Guide pour keybd_event (à coller dans un formulaire) :


Const VK_H = 72
Const VK_E = 69
Const VK_L = 76
Const VK_O = 79
Const KEYEVENTF_EXTENDEDKEY = &H1
Const KEYEVENTF_KEYUP = &H2


Private Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)


Private Sub Form_KeyPress(KeyAscii As Integer)


'Print the key on the form
Me.Print Chr$(KeyAscii);


End Sub


Private Sub Form_Paint()


'Clear the form
Me.Cls
keybd_event VK_H, 0, 0, 0 ' press H
keybd_event VK_H, 0, KEYEVENTF_KEYUP, 0 ' release H
keybd_event VK_E, 0, 0, 0 ' press E
keybd_event VK_E, 0, KEYEVENTF_KEYUP, 0 ' release E
keybd_event VK_L, 0, 0, 0 ' press L
keybd_event VK_L, 0, KEYEVENTF_KEYUP, 0 ' release L
keybd_event VK_L, 0, 0, 0 ' press L
keybd_event VK_L, 0, KEYEVENTF_KEYUP, 0 ' release L
keybd_event VK_O, 0, 0, 0 ' press O
keybd_event VK_O, 0, KEYEVENTF_KEYUP, 0 ' release O


End Sub

Guy
0
mlctrbne
Messages postés
2
Date d'inscription
dimanche 8 janvier 2006
Statut
Membre
Dernière intervention
11 janvier 2006

11 janv. 2006 à 15:13
Merci beaucoup
0
PCPT
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Membre
Dernière intervention
3 février 2018
49
11 janv. 2006 à 18:54
dans le post de Guy, clique sur le bouton "réponse acceptée" stp ;)
0