Api Keybd_Event()

jmdelhalle Messages postés 24 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 8 janvier 2005 - 8 janv. 2005 à 11:56
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 - 8 janv. 2005 à 18:49
Bonjour,
j'essaye, en vain, de faire fonctionner la séquence suivante pour aider mon fils
qui est handicapé. Quelqu'un a une idée ?

' Déclarations
Public Const vbKeyF7 = 118 'Touche F7
Public Const vbKeyShift = 16 'Touche Shift
Public Const vbKeyEnd = 35 'Touche Fin
Public Const vbKeyControl = 17 'Touche Ctrl
Public Const vbKeyC = 67 'Touche C


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



' Dans un bouton
.../..


' Séquence [F7] Passage en mode Modification
keybd_event(vbKeyF7, 0, 0, 0)
keybd_event(vbKeyF7, 0, 2, 0)


' Séquence [Shift] + [Fin] pour sélectionner le texte à récupérer
keybd_event(vbKeyShift, 0, 0, 0)
keybd_event(vbKeyEnd, 0, 0, 0)
keybd_event(vbKeyEnd, 0, 2, 0)
keybd_event(vbKeyShift, 0, 2, 0)


' Séquence [Ctrl] + [C] pour copier le texte dans le presse papier
keybd_event(vbKeyControl, 0, 0, 0)
keybd_event(vbKeyC, 0, 0, 0)
keybd_event(vbKeyC, 0, 2, 0)
keybd_event(vbKeyControl, 0, 2, 0)

JM

4 réponses

Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
8 janv. 2005 à 12:22
inutile de déclarer les constantes vb qui sont déjà definies.

Daniel
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 131
8 janv. 2005 à 12:46
Je te conseille de faire des sleep (fonction de l'API windows) entre
les événements KeyDown et KeyUp pour que le système est le temps de les
intercepter, ca vient sûrement de là ton problème !

DarK Sidious

[Administrateur et responsable VB/API du site ProgOtoP]
0
jmdelhalle Messages postés 24 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 8 janvier 2005
8 janv. 2005 à 18:10
j'ai essayé de mettre des sleep, mais cela ne change rien. Je passe bien
sur les champs mais je ne récupére rien dans le presse papier

JM
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
8 janv. 2005 à 18:49
tu dois donner le focus à ce que tu copie avant d'envoyer les caractères.

Daniel
0
Rejoignez-nous