Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[WDxx] Remplir un formulaire dans un champ Activex de IExplorer

3 réponses
Avatar
Georges Peyre
Quel est le code Windev à utiliser dans un champ Activex du navigateur
IExplorer pour cocher un bouton radio d'un formulaire ?


J'ai résolu 2 cas d'actions sur des champs d'un formulaire dans une
page affichée : Il me reste celui d'un bouton radio

Merci de m'aider



-1- Cas d'un champ de formulaire recevant une chaine de caractère :

Code source HTML du formulaire de la page affichée dans le champ
activex
Le champ à remplir est le nom
<TD class=normal vAlign=center colSpan=3><INPUT class=input1
onfocus=select() tabIndex=2 maxLength=35 name=nom></TD>

// code Windev qui charge le champ du nom
WNomDemande = "aaaaaa"
WNameInput = "nom"
TagName is string = WNameInput
mhtmInputBox = mdocDocument>>getElementById(TagName)
mhtmInputBox>>Value = WNomDemande



-2- Cas de la simulation du clic sur le bouton SUBMIT

Code source HTML du formulaire de la page affichée dans le champ
activex
Le champ traité est le bouton SUBMIT dont le nom est submit
<TD class=normal><INPUT class=submit tabIndex=8 type=submit
value=calculer name=submit></TD>

// Code Windev qui simule le click sur le bouton SUBMIT
WNameInput = "submit"
TagName = WNameInput
mhtmInputBox = mdocDocument>>getElementById(TagName)
mhtmInputBox>>Click



-3- Cas d'un bouton RADIO

Code source HTML du bouton RADIO permettant de saisir le sexe
<TD class=normal vAlign=center><INPUT tabIndex=3 type=radio value=f
name=genre>F</TD>
<TD class=normal vAlign=center><INPUT tabIndex=4 type=radio value=m
name=genre>M</TD>


QUESTION : Quel est le code Windev pour sélectionner le sexe M par
exemple ?

WSexeDemande = "M"
WNameInput = "genre"
TagName is string = WNameInput
mhtmInputBox = mdocDocument>>getElementById(TagName)

???? comment préciser l'index du genre
mhtmInputBox>>Value = WSexeDemande ????



Cordialement

--
Elle est pas belle la vie ?

3 réponses

Avatar
Georges Peyre
Georges Peyre a formulé ce lundi :

???? comment préciser l'index du genre
mhtmInputBox>>Value = WSexeDemande ????





-3- Cas d'un bouton RADIO
Code source HTML du bouton RADIO permettant de saisir le sexe
<TD class=normal vAlignÎnter><INPUT tabIndex=3 type=radio value=f
name=genre>F</TD>
<TD class=normal vAlignÎnter><INPUT tabIndex=4 type=radio value=m
name=genre>M</TD>




Exemple Windev qui marche a moitié

J'ai fait un pas en avant avec l'utilisation de checked

SI WSexeDemande = "M" ALORS
WNameInput = "genre"
TagName is string = WNameInput
mhtmInputBox = mdocDocument>>getElementById(TagName)
mhtmInputBox>>checked(1)
FIN

Ce code coche toujours la 1ère option

Comment utiliser l'index pour cocher la 2ème option ?

Cordialement

--
Elle est pas belle la vie ?
Avatar
Georges Peyre
Bonjour,

// Remplissage d'un formulaire affiché dans un champ Activex de
Internet Explorer
Nota : Bien sûr, ce code ne doit être exécuté que lorsque la page HTML
est complètement chargée.


Voici un code complet qui fonctionne mais qui trouvera certainement à
être amélioré par des développeurs plus pointus que moi


//Procédure de chargement d'une zone de formulaire en INPUT

mhtmDoc3 est un objet OLE dynamique
mdocDocument est un objet OLE dynamique
mhtmInputBox est un objet OLE dynamique


// ACCES direct aux champs d'un formulaire

// L'exmple traité est le suivant :
// Formulaire composé successivement de ...
// Un champ Nom
// Un champ Prénom
// Un champ Sexe à cocher F ou M
// Un champ Jour
// Un champ Mois
// Un champ Année
// Un bouton SUBMIT


mhtmDoc3 = ActiveX1>>Document
mdocDocument = mhtmDoc3>>body>>all>>tags("INPUT")

// 1er champ texte du formulaire : Nom
mdocDocument>>item(0)>>value("Cccccccccc")

// 2ème champ texte du formulaire : Prénom
mdocDocument>>item(1)>>value("Dddddddddd")

// sélectionner une option dans un bouton radio : Sexe avec options F
et M
// dans cet exemple les 2 options occupent respectivement les 3ème et
4ème rangs
// chaque position du bouton radio est accessible directement
// dans cet exemple on clique sur la 2ème option du bouton radio
mdocDocument>>item(3)>>click()

// Formulaire date de naissance
// 5ème champ texte du formulaire : Jour
mdocDocument>>item(4)>>value("01")
// 6ème champ texte du formulaire : Mois
mdocDocument>>item(5)>>value("01")
// 7ème champ texte du formulaire : Année
mdocDocument>>item(6)>>value("1990")


// clic sur bouton SUBMIT
TagName est une chaîne = "submit"
mhtmInputBox = mhtmDoc3>>getElementById(TagName)
mhtmInputBox>>Click

libérer mhtmDoc3
libérer mdocDocument
libérer mhtmInputBox

--
Elle est pas belle la vie ?
Avatar
didiflo
Le lundi 17 Avril 2006 à 12:23 par Georges Peyre :
Quel est le code Windev à utiliser dans un champ Activex du navigateur
IExplorer pour cocher un bouton radio d'un formulaire ?


J'ai résolu 2 cas d'actions sur des champs d'un formulaire dans une
page affichée : Il me reste celui d'un bouton radio

Merci de m'aider



-1- Cas d'un champ de formulaire recevant une chaine de caractère :

Code source HTML du formulaire de la page affichée dans le champ
activex
Le champ à remplir est le nom
onfocus=select() tabIndex=2 maxLength5 name=nom>

// code Windev qui charge le champ du nom
WNomDemande = "aaaaaa"
WNameInput = "nom"
TagName is string = WNameInput
mhtmInputBox = mdocDocument>>getElementById(TagName)
mhtmInputBox>>Value = WNomDemande



-2- Cas de la simulation du clic sur le bouton SUBMIT

Code source HTML du formulaire de la page affichée dans le champ
activex
Le champ traité est le bouton SUBMIT dont le nom est submit
valuelculer name=submit>

// Code Windev qui simule le click sur le bouton SUBMIT
WNameInput = "submit"
TagName = WNameInput
mhtmInputBox = mdocDocument>>getElementById(TagName)
mhtmInputBox>>Click



-3- Cas d'un bouton RADIO

Code source HTML du bouton RADIO permettant de saisir le sexe
name=genre>F
name=genre>M


QUESTION : Quel est le code Windev pour sélectionner le sexe M par
exemple ?

WSexeDemande = "M"
WNameInput = "genre"
TagName is string = WNameInput
mhtmInputBox = mdocDocument>>getElementById(TagName)

???? comment préciser l'index du genre
mhtmInputBox>>Value = WSexeDemande ????



Cordialement

--
Elle est pas belle la vie ?



bonjour
voila j'essaye ce code

mhtmDoc3 est un objet OLE dynamique
mdocDocument est un objet OLE dynamique
mhtmInputBox est un objet OLE dynamique
// clic sur bouton SUBMIT
TagName est une chaîne = "submit"
mhtmInputBox = mhtmDoc3>>getElementById(TagName)
mhtmInputBox>>Click

mais sa me met un Erreur
Erreur à la ligne 27 du traitement Initialisation de AX_SansNom1.
L'objet sur lequel on appelle la méthode getElementById n'est pas un objet Automation.

es ce que quelqu'un a une idée car j'arive pas valider