J'utilise (encore) Internet Explorer pour saisir des données de formulaire sur un site.
Dans un des champs je dois saisir un numéro formé de plusieurs chiffres.
J'utilise ce code :
$sCode = "1234"
$oText = _IEGetObjById($g_oIE, "Code")
_IEAction($oText, "focus")
Sleep(2000)
ControlSend($hwnd, '', '[CLASS:Internet Explorer_Server; INSTANCE:1]', $sCode, $SEND_RAW)
Sleep(1000)
$oText = _IEGetObjById($g_oIE, "Code")
_IEAction($oText, "focus")
Sleep(2000)
ControlSend($hwnd, '', '[CLASS:Internet Explorer_Server; INSTANCE:1]', $sCode, $SEND_RAW)
Sleep(1000)
Malheureusement il arrive parfois qu'à la place du premier chiffre soit tapé un autre caractère (celui qui correspond à la touche du haut du clavier mais sans l'appui simultané de la touche Shit).
Exemple : au lieu de saisir 2345, AutoIt saisit é345
Comme vous pouvez le constater, j'ai ajouté un Sleep(2000) avant la saisie du texte et j'ai utilisé le paramètre $SEND_RAW, sans succès.
J'utilise ControlSend() car _IEFormElementSetValue() ne fonctionne pas.
Peut-être faut-il que je change le paramétrage de saisie des caractères avec SendKeyDelay ou SendKeyDownDelay ?
Avez-vous déjà rencontré ce bug aléatoire ?