Forcer clavier Anglais dans un InputBox

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Gavriel
Niveau 3
Niveau 3
Messages : 32
Enregistré le : mer. 07 déc. 2016 22:29
Status : Hors ligne

Forcer clavier Anglais dans un InputBox

#1

Message par Gavriel »

bonjour
je voudrais savoir comment Forcer le clavier Anglais ou autre langue dans un InputBox sana avoir a faire shift + alt car j ai plusieur langue
merci d'avance
Avatar du membre
walkson
Modérateur
Modérateur
Messages : 1020
Enregistré le : ven. 12 août 2011 19:49
Localisation : Hurepoix
Status : Hors ligne

Re: Forcer clavier Anglais dans un InputBox

#2

Message par walkson »

Peut être ceci ?
#include <WinAPISys.au3>
_WinAPI_SetKeyboardLayout ( $hWnd, $iLanguage [, $iFlags = 0] )
#include <WinAPISys.au3>
_WinAPI_GetKeyboardLayout ( $hWnd )
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi
(Je ne compte que les heures heureuses)
Gavriel
Niveau 3
Niveau 3
Messages : 32
Enregistré le : mer. 07 déc. 2016 22:29
Status : Hors ligne

Re: Forcer clavier Anglais dans un InputBox

#3

Message par Gavriel »

Merci mais je n' ais pas reussi si cest possible de m'ecrire un exemple complet merci beaucoup
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: Forcer clavier Anglais dans un InputBox

#4

Message par mikell »

Pas forcément évident, c'est vrai :wink:
#include <WinAPISys.au3>

$hwnd = WinGetHandle(AutoItWinGetTitle())
_WinAPI_SetKeyboardLayout ($hwnd, 0x0409)   ; English U.S.

InputBox('Test', 'Please enter something', '', '', '', '', 100, 100, 0, $hwnd)
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Gavriel
Niveau 3
Niveau 3
Messages : 32
Enregistré le : mer. 07 déc. 2016 22:29
Status : Hors ligne

Re: Forcer clavier Anglais dans un InputBox

#5

Message par Gavriel »

Merci de m avoire repondu mais ca ne marche pas chez moi ets que c est normal?
merci d avance
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: Forcer clavier Anglais dans un InputBox

#6

Message par mikell »

Explique mieux le "ça ne marche pas"

(Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles )
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Gavriel
Niveau 3
Niveau 3
Messages : 32
Enregistré le : mer. 07 déc. 2016 22:29
Status : Hors ligne

Re: Forcer clavier Anglais dans un InputBox

#7

Message par Gavriel »

merci de mavoire repondu je vouler dire que le clavier ne passe pas en anglais mais reste en francais quant j ecris dans le InputBox merci
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: Forcer clavier Anglais dans un InputBox

#8

Message par mikell »

Avec mon bout de code, si je tape "azerty" ça écrit "qwerty" dans l'inputbox. pas chez toi ?
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Gavriel
Niveau 3
Niveau 3
Messages : 32
Enregistré le : mer. 07 déc. 2016 22:29
Status : Hors ligne

Re: Forcer clavier Anglais dans un InputBox

#9

Message par Gavriel »

non
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

Re: Forcer clavier Anglais dans un InputBox

#10

Message par Hugues »

Bonjour,

De mémoire j'ai vu un post sur le forum US, je crois qu'il modifiait la clef associée dans le registre.
Avatar du membre
walkson
Modérateur
Modérateur
Messages : 1020
Enregistré le : ven. 12 août 2011 19:49
Localisation : Hurepoix
Status : Hors ligne

Re: Forcer clavier Anglais dans un InputBox

#11

Message par walkson »

Bonjour,
J'ai testé le code de Mikell et aucun problème (sous Win 7)
La question est peut être de savoir si le clavier US existe ?
Un bout de code venu tout droit de l'aide répondra à la question....
#include <APILocaleConstants.au3>
#include <Array.au3>
#include <WinAPILocale.au3>
#include <WinAPISys.au3>

Local $aData = _WinAPI_GetKeyboardLayoutList()
If IsArray($aData) Then
   For $i = 1 To $aData[0]
      $aData[$i] = '0x' & Hex($aData[$i]) & ' (' & _WinAPI_GetLocaleInfo(BitAND($aData[$i], 0xFFFF), $LOCALE_SENGLANGUAGE) & ')'
   Next
EndIf

_ArrayDisplay($aData, '_WinAPI_GetKeyboardLayoutList')
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi
(Je ne compte que les heures heureuses)
Gavriel
Niveau 3
Niveau 3
Messages : 32
Enregistré le : mer. 07 déc. 2016 22:29
Status : Hors ligne

Re: Forcer clavier Anglais dans un InputBox

#12

Message par Gavriel »

merci de votre aide voici se que ca me donne
Row|Col 0
[0]|2
[1]|0x04090409 (English)
[2]|0x040C040C (French)
je suis sur win 8
Répondre