OVH Cloud OVH Cloud

Clavier

26 réponses
Avatar
Jean-Francois.Vassard
Bonjour,

Quelqu'un saurait-il comment il est possible de forcer le clavier en
majuscules ou en minuscules (comme si l'on appuyait manuellement sur la
touche Shift), à l'aide d'un programme Visual Basic (VB5 VB6)?

Merci d'avance,

JF

10 réponses

1 2 3
Avatar
Zoury
Salut Jean-François !

Dans quel contexte ? sur un textbox en particulier, dans tout le programme
VB ou voire même sur le système entier ?

--
Cordialement
Yanick
MVP pour Visual Basic
"Jean-Francois.Vassard" a écrit dans le
message de news:429e13f2$0$25035$
Bonjour,

Quelqu'un saurait-il comment il est possible de forcer le clavier en
majuscules ou en minuscules (comme si l'on appuyait manuellement sur la
touche Shift), à l'aide d'un programme Visual Basic (VB5 VB6)?

Merci d'avance,

JF




Avatar
David
Bonjour Jean-Francois,

Trouvé dans l'aide de VB en tapant constantes :

Constantes de code de touches


Lesconstantes suivantes peuvent remplacer les valeurs réelles partout dans
votre code :

Constante Valeur Description
vbKeyLButton 0x1 Bouton gauche de la souris
vbKeyRButton 0x2 Bouton droit de la souris
vbKeyCancel 0x3 Touche ANNULER
vbKeyMButton 0x4 Bouton secondaire de la souris
vbKeyBack 0x8 Touche RET.ARR
vbKeyTab 0x9 Touche TAB
vbKeyClear 0xC Touche EFFACER
vbKeyReturn 0xD Touche ENTRÉE
vbKeyShift 0x10 Touche MAJ
vbKeyControl 0x11 Touche CTRL
vbKeyMenu 0x12 Touche MENU
vbKeyPause 0x13 Touche PAUSE
vbKeyCapital 0x14 Touche VERR.MAJ


a+
Jean-Pol DAVID
--
Quis ? Quid ? Ubi ? Quibus auxiliis ? Cur ? Quomodo ? Quando ?

"Jean-Francois.Vassard" a écrit dans le
message de news: 429e13f2$0$25035$
Bonjour,

Quelqu'un saurait-il comment il est possible de forcer le clavier en
majuscules ou en minuscules (comme si l'on appuyait manuellement sur la
touche Shift), à l'aide d'un programme Visual Basic (VB5 VB6)?

Merci d'avance,

JF




Avatar
Fred
Dans son message 429e13f2$0$25035$
Jean-Francois.Vassard nous dit :

Bonjour,

Quelqu'un saurait-il comment il est possible de forcer le clavier en
majuscules ou en minuscules (comme si l'on appuyait manuellement sur
la touche Shift), à l'aide d'un programme Visual Basic (VB5 VB6)?

Merci d'avance,

JF



Un début de piste ici ?
http://minilien.fr/a0jzv6

(http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/keyboardinput/keyboardinputreference/keyboardinputfunctions/sendinput.asp)

Spécialistes des appels API en vb, à vos claviers !


--
Fred
Avatar
RCR
Tu devrais arriver avec Sendkey() regarde dans l'aide pour la valeur du
capslock...

A+

"Jean-Francois.Vassard" a écrit dans le
message de news: 429e13f2$0$25035$
Bonjour,

Quelqu'un saurait-il comment il est possible de forcer le clavier en
majuscules ou en minuscules (comme si l'on appuyait manuellement sur la
touche Shift), à l'aide d'un programme Visual Basic (VB5 VB6)?

Merci d'avance,

JF




Avatar
RCR
re ... voila le code

SendKeys "{CAPSLOCK}"


A Peluche

"RCR" a écrit dans le message de news:
eJaa$
Tu devrais arriver avec Sendkey() regarde dans l'aide pour la valeur du
capslock...

A+

"Jean-Francois.Vassard" a écrit dans le
message de news: 429e13f2$0$25035$
Bonjour,

Quelqu'un saurait-il comment il est possible de forcer le clavier en
majuscules ou en minuscules (comme si l'on appuyait manuellement sur la
touche Shift), à l'aide d'un programme Visual Basic (VB5 VB6)?

Merci d'avance,

JF








Avatar
Jean-Francois.Vassard
Merci pour votre aide. Dans le système entier... ou un textbox

"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de
news:
Salut Jean-François !

Dans quel contexte ? sur un textbox en particulier, dans tout le programme
VB ou voire même sur le système entier ?

--
Cordialement
Yanick
MVP pour Visual Basic
"Jean-Francois.Vassard" a écrit dans le
message de news:429e13f2$0$25035$
> Bonjour,
>
> Quelqu'un saurait-il comment il est possible de forcer le clavier en
> majuscules ou en minuscules (comme si l'on appuyait manuellement sur la
> touche Shift), à l'aide d'un programme Visual Basic (VB5 VB6)?
>
> Merci d'avance,
>
> JF
>
>




Avatar
Jean-Francois.Vassard
Bonjour, merci pour votre aide,
J'ai essayé SendKeys (capslock) sur un bouton, mais rien ne se passe au
niveau du clavier. Je ne bascule pas en majuscule ou en minuscule...


"RCR" a écrit dans le message de
news:
re ... voila le code

SendKeys "{CAPSLOCK}"


A Peluche

"RCR" a écrit dans le message de news:
eJaa$
> Tu devrais arriver avec Sendkey() regarde dans l'aide pour la valeur du
> capslock...
>
> A+
>
> "Jean-Francois.Vassard" a écrit dans


le
> message de news: 429e13f2$0$25035$
>> Bonjour,
>>
>> Quelqu'un saurait-il comment il est possible de forcer le clavier en
>> majuscules ou en minuscules (comme si l'on appuyait manuellement sur la
>> touche Shift), à l'aide d'un programme Visual Basic (VB5 VB6)?
>>
>> Merci d'avance,
>>
>> JF
>>
>>
>
>




Avatar
Gloops
Pompé chez API-Guide :
Un programme de démonstration du changement d'état du clavier.
On y voit que la réponse est du style TurnOn VK_CAPITAL pour passer en
majuscules, et TurnOff VK_CAPITAL pour passer en minuscules, et que ça
marche si on garde SetKeyboardState, GetKeyboardState, VK_CAPITAL,
kbArray, TurnOff et TurnOn ainsi que le type KeyboardBytes, sous réserve
que je n'oublie pas autre chose. Bien sûr un type de données doit être
déclaré avant d'être utilisé, donc si on déclare kbArray avant
KeyboardBytes on se fait sonner les cloches.

Sleep c'est pour qu'on ait le temps de voir les petites lupiotes
clignoter (optionnellement en chantant "Fais dodo, Colas mon p'tit
frèèère").

Aux dernières nouvelles API-Guide est là :
http://www.mentalis.org/index2.shtml

Je ne suis pas sûr qu'ils parlent encore de VB6, il me semble qu'à un
moment je ne trouvais plus que des références à .Net
Peut-être que je n'avais pas cherché très sérieusement ?
_______________________________________________________________________
Const VK_CAPITAL = &H14
Const VK_NUMLOCK = &H90
Const VK_SCROLL = &H91
Const VK_USED = VK_SCROLL
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As
Long) As Long
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Dim kbArray As KeyboardBytes, CapsLock As Boolean, kbOld As KeyboardBytes
Private Sub Form_Load()
'KPD-Team 1999
'URL: http://www.allapi.net/
'E-Mail:
'Get the current keyboardstate
GetKeyboardState kbOld
'Hide the form
Me.Hide
MsgBox "Keep your eyes on the little num-, shift- and scrolllock
lights on the keyboard."
TurnOff VK_CAPITAL
TurnOff VK_NUMLOCK
TurnOff VK_SCROLL
Sleep 1000
TurnOn VK_NUMLOCK
Sleep 100
TurnOn VK_CAPITAL
Sleep 100
TurnOn VK_SCROLL
Sleep 300
TurnOff VK_NUMLOCK
Sleep 100
TurnOff VK_CAPITAL
Sleep 100
TurnOff VK_SCROLL
Sleep 500
TurnOn VK_NUMLOCK
TurnOn VK_SCROLL
Sleep 200
TurnOff VK_NUMLOCK
TurnOff VK_SCROLL
Sleep 200
TurnOn VK_NUMLOCK
TurnOn VK_SCROLL
Sleep 200
TurnOff VK_NUMLOCK
TurnOff VK_SCROLL
Sleep 200
TurnOn VK_CAPITAL
Sleep 200
TurnOff VK_CAPITAL
Sleep 200
TurnOn VK_CAPITAL
Sleep 200
TurnOff VK_CAPITAL
Sleep 200
TurnOn VK_NUMLOCK
TurnOn VK_SCROLL
Sleep 200
TurnOff VK_NUMLOCK
TurnOff VK_SCROLL
Sleep 200
TurnOn VK_NUMLOCK
TurnOn VK_SCROLL
Sleep 200
TurnOff VK_NUMLOCK
TurnOff VK_SCROLL
Sleep 200
TurnOn VK_CAPITAL
Sleep 400
TurnOff VK_CAPITAL
Sleep 200
TurnOn VK_NUMLOCK
Sleep 100
TurnOn VK_CAPITAL
Sleep 100
TurnOn VK_SCROLL
Sleep 300
TurnOff VK_SCROLL
Sleep 100
TurnOff VK_CAPITAL
Sleep 100
TurnOff VK_NUMLOCK
Sleep 1000
Unload Me
End Sub
Private Sub TurnOn(vkKey As Long)
'Get the keyboard state
GetKeyboardState kbArray
'Change a key
kbArray.kbByte(vkKey) = 1
'Set the keyboard state
SetKeyboardState kbArray
End Sub
Private Sub TurnOff(vkKey As Long)
'Get the keyboard state
GetKeyboardState kbArray
'change a key
kbArray.kbByte(vkKey) = 0
'set the keyboard state
SetKeyboardState kbArray
End Sub
Private Sub Form_Unload(Cancel As Integer)
'restore the old keyboard state
SetKeyboardState kbOld
End Sub

____________________________________________________
Jean-Francois.Vassard a écrit, le 01/06/2005 23:00 :

Bonjour,

Quelqu'un saurait-il comment il est possible de forcer le clavier en
majuscules ou en minuscules (comme si l'on appuyait manuellement sur la
touche Shift), à l'aide d'un programme Visual Basic (VB5 VB6)?

Merci d'avance,

JF




Avatar
Gloops
Bonjour,

L'autre jour je ne trouvais plus les exemples sur API-Guide en ligne,
alors j'en ai balancé un pompé chez eux. J'ai récidivé et je me suis
rendu compte juste après que l'exemple voulu est disponible là
http://www.mentalis.org/apilist/SetKeyboardState.shtml

en cliquant sur Keyboard animation.

Du coup j'ai supprimé mon autre message, il risque de rester disponible
sur une partie de usenet (désolé, pas très propre ...)

Dans l'exemple on voit TurnOn VK_CAPITAL pour passer en majuscules et
TurnOff VK_CAPITAL pour passer en minuscules.
_____________________________________________________
Jean-Francois.Vassard a écrit, le 01/06/2005 23:00 :

Bonjour,

Quelqu'un saurait-il comment il est possible de forcer le clavier en
majuscules ou en minuscules (comme si l'on appuyait manuellement sur la
touche Shift), à l'aide d'un programme Visual Basic (VB5 VB6)?

Merci d'avance,

JF




Avatar
Zoury
Salut Jean-Francois ! :O)

Pour un textbox ou des textboxes contenus dans ton application, la méthode
proposée par Gloops devrait le travail. Si tu tiens à le faire sur le
système entier, tu devras te faire une DLL en C/C++ (par exemple) qui elle
pourra faire un hook sur le système en entier (car VB ne peut pas). Ensuite
tu pourras utiliser un callback pour transmettre les infos du système vers
ton programme VB6 et permettre à ton application de faire ce qu'elle veut
avec.

Voici une discussion (anglaise) plus détaillée à ce sujet :
http://groups.google.com/groups?threadmbe3d37%24b880d8a0%24a0c5e994%40default

--
Cordialement
Yanick
MVP pour Visual Basic
news:42a1f8a0$0$917$
Merci pour votre aide. Dans le système entier... ou un textbox

"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de
news:
> Salut Jean-François !
>
> Dans quel contexte ? sur un textbox en particulier, dans tout le


programme
> VB ou voire même sur le système entier ?
>
> --
> Cordialement
> Yanick
> MVP pour Visual Basic
> "Jean-Francois.Vassard" a écrit dans


le
> message de news:429e13f2$0$25035$
> > Bonjour,
> >
> > Quelqu'un saurait-il comment il est possible de forcer le clavier en
> > majuscules ou en minuscules (comme si l'on appuyait manuellement sur


la
> > touche Shift), à l'aide d'un programme Visual Basic (VB5 VB6)?
> >
> > Merci d'avance,
> >
> > JF
> >
> >
>
>




1 2 3