gestion clavier azerty et chiffres sur pc portable
gestion clavier azerty et chiffres sur pc portable
Bonjour à tous
J'ai un pc windows7 pro, sans clavier numérique, alors que j'ai besoin de taper des chiffres très régulièrement
J'aurais donc besoin que les touches correspondant aux chiffres (ligne en haut du clavier) soit toujours actives par défaut pour envoyer 12345... plutôt que &é"'(
(et pouvoir envoyer &é"'( si j'appuie en même temps sur shift)
et que je puisse toujours saisir les lettres en minuscule et majuscule comme à l'habitude en AZERTY
J'ai fait des recherches, le clavier QWERTY gère ça apparemment très bien mais pas AZERTY
ps: je ne peux pas utiliser la touche LN, qui gère d'autres choses encore moins pratiques sur ledit PC, et que j'ai du désactiver!
J'ai vu qu'il existe la notion de "clavier numérique" sur internet mais mon pc professionnel sans droits ADMIN ne semble pas pouvoir modifier cela, en tout cas je n'ai rien trouvé même s'il me semble possible de changer la langue du clavier.
Du coup je me demande s'il ne serait pas plus simple de faire un programme qui tourne en boucle qui dit
test si touche "&" appuyée envoyer "1" (sauf si appuie simultané sur SHIFT+ "&" met "&") et faire ça pour 1,2,3,4....
quelqu'un a t'il déjà rencontré ce problème et trouvé une autre parade (simple si possible)?
merci par avance pour votre aide
j'ai pensé faire:
If OpenWindow....
repeat
If KeyboardPushed...
forever
après, vu mon niveau de débutant c'est là que tout ce complique...
je ne comprends pas pourquoi sous QWERTY il propose par défaut 12345
et que sous AZERTY on se tape &é"'( par défaut et que ce soit compliqué pour utiliser des chiffres
J'ai un pc windows7 pro, sans clavier numérique, alors que j'ai besoin de taper des chiffres très régulièrement
J'aurais donc besoin que les touches correspondant aux chiffres (ligne en haut du clavier) soit toujours actives par défaut pour envoyer 12345... plutôt que &é"'(
(et pouvoir envoyer &é"'( si j'appuie en même temps sur shift)
et que je puisse toujours saisir les lettres en minuscule et majuscule comme à l'habitude en AZERTY
J'ai fait des recherches, le clavier QWERTY gère ça apparemment très bien mais pas AZERTY
ps: je ne peux pas utiliser la touche LN, qui gère d'autres choses encore moins pratiques sur ledit PC, et que j'ai du désactiver!
J'ai vu qu'il existe la notion de "clavier numérique" sur internet mais mon pc professionnel sans droits ADMIN ne semble pas pouvoir modifier cela, en tout cas je n'ai rien trouvé même s'il me semble possible de changer la langue du clavier.
Du coup je me demande s'il ne serait pas plus simple de faire un programme qui tourne en boucle qui dit
test si touche "&" appuyée envoyer "1" (sauf si appuie simultané sur SHIFT+ "&" met "&") et faire ça pour 1,2,3,4....
quelqu'un a t'il déjà rencontré ce problème et trouvé une autre parade (simple si possible)?
merci par avance pour votre aide
j'ai pensé faire:
If OpenWindow....
repeat
If KeyboardPushed...
forever
après, vu mon niveau de débutant c'est là que tout ce complique...
je ne comprends pas pourquoi sous QWERTY il propose par défaut 12345
et que sous AZERTY on se tape &é"'( par défaut et que ce soit compliqué pour utiliser des chiffres
Re: gestion clavier azerty et chiffres sur pc portable
Clairement non, ce ne sera pas "plus simple" ^^Du coup je me demande s'il ne serait pas plus simple de faire un programme qui tourne en boucle qui dit
test si touche "&" appuyée envoyer "1" (sauf si appuie simultané sur SHIFT+ "&" met "&") et faire ça pour 1,2,3,4....
Ce que tu souhaites faire nécessite du callback, des hook de clavier à gogo, des Api etc...
Et activer "Verr maj" au démarrage du PC ?
Après tu prends l'habitude de laisser ton petit doit sur Shift(maj) pour écrire en min et les symboles.
Code : Tout sélectionner
; Activer maj (non stop)
keybd_event_ ( #VK_SHIFT ,0,0,0)
; Désactiver maj (non stop)
keybd_event_ ( #VK_SHIFT ,0,2,0)
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: gestion clavier azerty et chiffres sur pc portable
... ou acheter un pavé numérique USB ~10€, aucun driver à installer
Re: gestion clavier azerty et chiffres sur pc portable
Aloooooooooooors... T'as pas les droits d'admin? Donc installer un programme du type AutoHotKey c'est pas possible? Même chose, installer un profile de clavier personnalisé, pas possible non plus?
Sinon, oui, ton app est pas super compliquée en soit, mais va falloir passer par de l'API windows; ce qui n'est pas le plus accessible pour un débutant. En gros, il faut que tu fasses un Key logger. Si t'as un antivirus un brin nerveux, il va pas bien le prendre du tout :/
Sinon, oui, ton app est pas super compliquée en soit, mais va falloir passer par de l'API windows; ce qui n'est pas le plus accessible pour un débutant. En gros, il faut que tu fasses un Key logger. Si t'as un antivirus un brin nerveux, il va pas bien le prendre du tout :/
Re: gestion clavier azerty et chiffres sur pc portable
Code : Tout sélectionner
Global hook
Procedure SendKey(Option.l)
keybd_event_(#VK_SHIFT,0,0,0)
keybd_event_(Option,0,0,0)
keybd_event_(Option,0,#KEYEVENTF_KEYUP,0)
keybd_event_(#VK_SHIFT,0,#KEYEVENTF_KEYUP,0)
;Delay(60)
EndProcedure
Procedure.l Hook(nCode, wParam, *p.KBDLLHOOKSTRUCT)
If nCode = #HC_ACTION
If wParam = #WM_KEYDOWN
Select *p\vkCode
Case Asc("1")
SendKey(#VK_1)
ProcedureReturn -1
Default
ProcedureReturn CallNextHookEx_(hook, nCode, wParam, lParam)
EndSelect
EndIf
EndIf
EndProcedure
#WH_KEYBOARD_LL = 13
hook = SetWindowsHookEx_(#WH_KEYBOARD_LL,@Hook(),GetModuleHandle_(0),0)
OpenWindow(0,0,0,0,0,"",#PB_Window_Invisible)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
Re: gestion clavier azerty et chiffres sur pc portable
Bonjour à tous et merci pour vos réponses!
C'est déjà en voie d'être réglé sous peu, grâce à votre aide
Je voudrais qu'il affiche toujours les chiffres (qu'il soit en minuscules ou en majuscules)
comme ça je ne me prend plus la tête à regarder sur le voyant ou j'en suis, je sais qu'il tape des chiffres (c'est ce que je lui demande a 95%)
Après, comme on a besoin de temps en temps de: " ' é è
je vais essayer de voir si j'arrive à lui dire, toujours faire "SendKey(#VK_1)", sauf si appuie simultanée sur SHIFT ((que je sois en minuscule ou majuscule))
En bref, la touche MAJ permet de basucler de minuscule en majuscule et réciproquement
Ma ligne de touches serait toujours des chiffres, sauf si appuie simultanée sur SHIFT ferait des: &é"('
Je vais essayer de bidouiller ça, en tout cas la procédure n'est pas bloquée par le pc et l'antivirus c'est super cool!!!
Il faut que j'arrive a tester l'appuie simultanée de SHIFT (ou de trouver une autre touche qui aurait une fonction comme MAJ avec une position oui/non pour faire des chiffres ou non...
C'est déjà en voie d'être réglé sous peu, grâce à votre aide
Le problème serait de devoir repasser en minuscule pour écrire des motsAr-S / Et activer "Verr maj" au démarrage du PC
Oui, c'est pour ne pas rajouter du bordel sur mon bureau (je n'ose même pas dire tout ce qui traîne...)Marc56 / acheter un pavé numérique USB
Et non, mes possibilités sont très limités (et celles du PC aussi)poshu / T'as pas les droits d'admin?
Ca marche super!!!, je vais maintenant essayer de l'adapterboby / code
Je voudrais qu'il affiche toujours les chiffres (qu'il soit en minuscules ou en majuscules)
comme ça je ne me prend plus la tête à regarder sur le voyant ou j'en suis, je sais qu'il tape des chiffres (c'est ce que je lui demande a 95%)
Après, comme on a besoin de temps en temps de: " ' é è
je vais essayer de voir si j'arrive à lui dire, toujours faire "SendKey(#VK_1)", sauf si appuie simultanée sur SHIFT ((que je sois en minuscule ou majuscule))
En bref, la touche MAJ permet de basucler de minuscule en majuscule et réciproquement
Ma ligne de touches serait toujours des chiffres, sauf si appuie simultanée sur SHIFT ferait des: &é"('
Je vais essayer de bidouiller ça, en tout cas la procédure n'est pas bloquée par le pc et l'antivirus c'est super cool!!!
Il faut que j'arrive a tester l'appuie simultanée de SHIFT (ou de trouver une autre touche qui aurait une fonction comme MAJ avec une position oui/non pour faire des chiffres ou non...
Re: gestion clavier azerty et chiffres sur pc portable
Bonjour,
Je suis intéressée par le hook de boby mais je ne sais pas comment faire, où le mettre, etc...
Pouvez-vous m'aider, merci
Je suis intéressée par le hook de boby mais je ne sais pas comment faire, où le mettre, etc...
Pouvez-vous m'aider, merci
-
- Messages : 596
- Inscription : lun. 26/avr./2010 16:14
- Localisation : S 48° 52' 31'' / O 123° 23' 33''
Re: gestion clavier azerty et chiffres sur pc portable
Bonjour,xica a écrit : Je suis intéressée par le hook de boby mais je ne sais pas comment faire, où le mettre, etc...
C'est un peu délicat de répondre précisément à ta demande sans que tu fournisses un minimum d'infos sur ton propre code et son architecture.
C'est un peu comme si tu demandais où mettre un lave-linge chez toi sans fournir les plans de ton habitation avec les emplacements d'arrivées d'eau et d'électricité...
En l'espèce, le code est utilisable tel que fourni. En gros, le plus simple étant de placer les procédures SendKey() et Hook() avant l'appel à la commande SetWindowsHookEx_(), elle-même appelée (à la racine du prog ou à partir d'une procédure) impérativement avant la boucle d'évènements Repeat:WaitWindowEvent():Until, en t'assurant que la variable "hook" soit bien définie en Global pour qu'elle puisse être récupérée dans la procédure Hook().
-
- Messages : 596
- Inscription : lun. 26/avr./2010 16:14
- Localisation : S 48° 52' 31'' / O 123° 23' 33''
Re: gestion clavier azerty et chiffres sur pc portable
Une approche très légèrement différente, avec activation ou arrêt de l'interception des touches 0 à 9 du clavier simple :
Code : Tout sélectionner
EnableExplicit
Global IDProcInterceptionClavier
#Fenetre=0
Enumeration
#Gadget1
#Gadget2
EndEnumeration
Procedure Fc_InterceptionEvenementClavier(ArgCodeHook,ArgCodeTouche,ArgLParam)
If ArgCodeHook>=0
If Not ArgLParam & $80000000 ; Touche enfoncée
If ArgCodeTouche>=#VK_0 And ArgCodeTouche<=#VK_9
ArgCodeTouche+#VK_NUMPAD0-48
keybd_event_(ArgCodeTouche,0,0,0)
keybd_event_(ArgCodeTouche,0,#KEYEVENTF_KEYUP,0)
ProcedureReturn -1
EndIf
EndIf
EndIf
ProcedureReturn CallNextHookEx_(IDProcInterceptionClavier,ArgCodeHook,ArgCodeTouche,ArgLParam)
EndProcedure
;
Procedure Pc_ActivationOuArretInterceptionClavier()
Protected StatutGadget=GetGadgetData(#Gadget2)
Select StatutGadget
Case 0
If Not IDProcInterceptionClavier
Debug "Activation interception"
IDProcInterceptionClavier=SetWindowsHookEx_(#WH_KEYBOARD,@Fc_InterceptionEvenementClavier(),#Null,GetCurrentThreadId_())
SetGadgetText(#Gadget2,"Ne plus intercepter")
SetGadgetData(#Gadget2,1)
EndIf
Case 1
If IDProcInterceptionClavier
Debug "Arrêt interception"
UnhookWindowsHookEx_(IDProcInterceptionClavier)
IDProcInterceptionClavier=0
SetGadgetText(#Gadget2,"Intercepter")
SetGadgetData(#Gadget2,0)
EndIf
EndSelect
SetActiveGadget(#Gadget1)
EndProcedure
;
If OpenWindow(#Fenetre,0,0,400,80,"Test clavier 0 à 9",#PB_Window_ScreenCentered|#PB_Window_SystemMenu)
StringGadget(#Gadget1,10,10,380,25,"")
ButtonGadget(#Gadget2,140,45,120,20,"")
; Activation interception clavier
Pc_ActivationOuArretInterceptionClavier()
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Select EventGadget()
Case #Gadget2
Pc_ActivationOuArretInterceptionClavier()
EndSelect
Case #PB_Event_CloseWindow
Break
EndSelect
ForEver
; Arrêt interception clavier
Pc_ActivationOuArretInterceptionClavier()
EndIf
Re: gestion clavier azerty et chiffres sur pc portable
Denis
Bonne Jounée à tous
Bonne Jounée à tous
Re: gestion clavier azerty et chiffres sur pc portable
Bonjour a tous,
Lorsqu'on rencontre un problème avec le clavier de son PC, il existe la possibilité d'utiliser un clavier virtuel comme sur Android
Lancer le clavier virtuel : Win+R -> Ouvrir : osk.exe (On Screen Keyboard)
Autre possibilité, clic droit sur la barre des tâches et cocher Afficher le bouton clavier tactile (Win10 et Win11 ?)
cage
Lorsqu'on rencontre un problème avec le clavier de son PC, il existe la possibilité d'utiliser un clavier virtuel comme sur Android
Lancer le clavier virtuel : Win+R -> Ouvrir : osk.exe (On Screen Keyboard)
Autre possibilité, clic droit sur la barre des tâches et cocher Afficher le bouton clavier tactile (Win10 et Win11 ?)
cage
■ Win10 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.00 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr