OVH Cloud OVH Cloud

Boite pour entree de données

11 réponses
Avatar
géo
Ca doit etre tout bete mais comment afficher une InputBox ( boite de
dialogue comme la boite Info() (msgbox) mais qui permet d'entrer des
valeurs ??
//------------------------
// du style :
h est un entier
h = inputBox("Entrer une heure entre 0 et 23")

SELON h
cas :...

// etc
//---------------------------
J'arrive pas a mettre la main dessus .

Amicalement


Géo

10 réponses

1 2
Avatar
J-M des Grottes
géo vient de nous annoncer :
Ca doit etre tout bete mais comment afficher une InputBox ( boite de dialogue
comme la boite Info() (msgbox) mais qui permet d'entrer des valeurs ??
//------------------------
// du style :
h est un entier
h = inputBox("Entrer une heure entre 0 et 23")

SELON h
cas :...

// etc
//---------------------------
J'arrive pas a mettre la main dessus .

Amicalement


Géo



Ben, tu crées une fenêtre avec un champs de saisie...

--
Ceci est une signature automatique de MesNews.
Site : http://www.mesnews.net
Avatar
Roumegou Eric
J-M des Grottes a exposé le 11/04/2005 :
géo vient de nous annoncer :
Ca doit etre tout bete mais comment afficher une InputBox ( boite de
dialogue comme la boite Info() (msgbox) mais qui permet d'entrer des
valeurs ??
//------------------------
// du style :
h est un entier
h = inputBox("Entrer une heure entre 0 et 23")

SELON h
cas :...

// etc
//---------------------------
J'arrive pas a mettre la main dessus .

Amicalement


Géo



Ben, tu crées une fenêtre avec un champs de saisie...



Oui une gestion d'invite ou tu décris le texte, et les options
autorisées, réponses obligatoires oui ou non.
et après tu l'utiliserais comme cela
choix=ouvre(Invite,idInvite)

sachant que tu aurais un RENVOYER de la valeur saisie après les
contrôles.

--
Eric Roumégou
http://cerbermail.com/?TSoulBerPA
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Michel
Roumegou Eric a écrit :

sachant que tu aurais un RENVOYER de la valeur saisie après les contrôles.




Le RENVOYER(valeurSaisie) pouvant avantageusement être placée dans le
code de fermeture de la fenetre.

Michel
Avatar
Roumegou Eric
Michel a présenté l'énoncé suivant :
Roumegou Eric a écrit :

sachant que tu aurais un RENVOYER de la valeur saisie après les contrôles.




Le RENVOYER(valeurSaisie) pouvant avantageusement être placée dans le code de
fermeture de la fenetre.



je ne l'entends pas autrement. ;o)
en globale chretour est une chaine
en btn validation
contrôles
puis
chretour=ValeurSaisie
Ferme()
en btn annuler
chretour="ANNULE" // par ex pour tester l'abandon
Ferme()

et en fermeture de la fenêtre
RENVOYER chretour

Voilà, tout est fait.

Ah si c'était aussi simple de gérer une popup en WebDev ...

Michel



--
Eric Roumégou
http://cerbermail.com/?TSoulBerPA
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Pascal R.
Roumegou Eric a écrit :
Michel a présenté l'énoncé suivant :

Roumegou Eric a écrit :

sachant que tu aurais un RENVOYER de la valeur saisie après les
contrôles.




Le RENVOYER(valeurSaisie) pouvant avantageusement être placée dans le
code de fermeture de la fenetre.




je ne l'entends pas autrement. ;o)
en globale chretour est une chaine
en btn validation
contrôles
puis
chretour=ValeurSaisie
Ferme()
en btn annuler
chretour="ANNULE" // par ex pour tester l'abandon
Ferme()

et en fermeture de la fenêtre
RENVOYER chretour

Voilà, tout est fait.

Ah si c'était aussi simple de gérer une popup en WebDev ...


Michel






Perso, je préfère renvoyer un Booléen Vrai si Valide et Faux si abandon
et passé la chaine en paramètre de la procedure.

Ca permet de ne pas s'occuper de la chaine de retour et donc
bloquer une saisie (de chaine vide ou de chaine "ANNULE") pour
l'abandon.
Maintenant, chacun fait ce qu'il lui plait ;-)
Pascal
Avatar
Michel
Pascal R. a écrit :

Maintenant, chacun fait ce qu'il lui plait ;-)



Comme tu dis Pascal ;-)

En fait, je trouve plus logique la suggestion d'Eric d'attendre une
chaine qqsoit l'action et de traiter la chaine de retour.

la fenètre se comporte alors comme une fonction.

Pour le traitement des erreurs aussi c'est plus explicite, supposons que
la valeur saisie doive -t être vérifiée (il y a des chances, non ?)

un switch et tu as tous les cas possible (annuler, sortie "sauvage",
mauvaise valeur etc...)

Pourquoi plaquer là dessus le traitement d'un booleen, ça alourdit
inutilement et c'est générateur d'erreur ?

Michel
Avatar
Pascal R.
Michel a écrit :
Pascal R. a écrit :

Maintenant, chacun fait ce qu'il lui plait ;-)




Comme tu dis Pascal ;-)

En fait, je trouve plus logique la suggestion d'Eric d'attendre une
chaine qqsoit l'action et de traiter la chaine de retour.

la fenètre se comporte alors comme une fonction.

Pour le traitement des erreurs aussi c'est plus explicite, supposons que
la valeur saisie doive -t être vérifiée (il y a des chances, non ?)

un switch et tu as tous les cas possible (annuler, sortie "sauvage",
mauvaise valeur etc...)

Pourquoi plaquer là dessus le traitement d'un booleen, ça alourdit
inutilement et c'est générateur d'erreur ?

Michel




C'est vous qui voyez ! ;-)
Perso, si l'utilisateur clique sur annuler, je sais que je n'ai pas à
traiter la chaine.
Si ouvre( InputBox, machaine) alors
//Traitement de [maChaine]
sinon
//Traitement abandon
fin
Moi je trouve ca assez propre et pas plus lourd qu'autre chose. :-)
Pascal
Avatar
géo
Pascal R. a écrit:
Michel a écrit :

Pascal R. a écrit :

Maintenant, chacun fait ce qu'il lui plait ;-)










merci pour toute vos suggestions !!
je pensais qu'il existait un truc tout fait comme en VB ....
je vais me mettre a coder une petite fenetre reutilisable.

Merci

Géo
Avatar
géo
géo a écrit:
Pascal R. a écrit:

Michel a écrit :

Pascal R. a écrit :

Maintenant, chacun fait ce qu'il lui plait ;-)











merci pour toute vos suggestions !!
je pensais qu'il existait un truc tout fait comme en VB ....
je vais me mettre a coder une petite fenetre reutilisable.

Merci

Géo



je crois que j'ai trouve encore atre chose :

Si on utilise la fonction :
// dans la partie globale
PROCEDURE frmInputBox(titre="",titre_fenetre="",valeur_defaut="")
// ....
// bouton OK
ferme(MaFenêtre ,txtValeur..valeur) // pour fermer par le bouton OK
// bouton Annuler
ferme(MaFenêtre ,"ANNULER") // pour fermer par le bouton OK

// je peux recuperer sous la forme
reponse est une chaine
reponse = ouvre(frmInputBox, "Libellé de l'inputbox","Titre", "Defaut")

ça me semble assez elegant ( et sans passer par des globales ) , qu'en
pensez-vous ? (je susi Newbie)

Amicalement

Géo
Avatar
Michel
géo a écrit :
géo a écrit:

Pascal R. a écrit:

Michel a écrit :

Pascal R. a écrit :

Maintenant, chacun fait ce qu'il lui plait ;-)












merci pour toute vos suggestions !!
je pensais qu'il existait un truc tout fait comme en VB ....
je vais me mettre a coder une petite fenetre reutilisable.

Merci

Géo



je crois que j'ai trouve encore atre chose :

Si on utilise la fonction :
// dans la partie globale
PROCEDURE frmInputBox(titre="",titre_fenetre="",valeur_defaut="")
// ....
// bouton OK
ferme(MaFenêtre ,txtValeur..valeur) // pour fermer par le bouton OK
// bouton Annuler
ferme(MaFenêtre ,"ANNULER") // pour fermer par le bouton OK

// je peux recuperer sous la forme
reponse est une chaine
reponse = ouvre(frmInputBox, "Libellé de l'inputbox","Titre", "Defaut")

ça me semble assez elegant ( et sans passer par des globales ) , qu'en
pensez-vous ? (je susi Newbie)

Amicalement

Géo





Oui, tu peux faire ça, mais dans ce cas tu ne traites pas la fermeture
de la fenetre par l'icone "croix" ni la sortie sauvage Alt F4

Dans le code de fermeture par contre tu peux ajouter :
Moimeme..ValeurRenvoyée = "ANNULER" et tu retrouveras le même comportement.

Michel
1 2