Page 1 sur 1

[R] Input de type double

Posté : sam. 16 juin 2012 17:22
par Kagami
Bonjour,

J'ai fait quelques recherches mais sans vraiment de succès, le meilleur sujet que j'ai trouvé est celui-ci mais je cherche un moyen plus direct.
http://autoitscript.fr/forum/viewtopic. ... ble#p15968

Existe t-il un $ES_NUMBER pour les nombres décimaux et non entiers?
(Je travaille sur une input appartenant à une GUI et non à une InputBox)

Merci.

Re: [..] Input de type double

Posté : sam. 16 juin 2012 17:43
par mikell
Peut-être un traitement de chaîne en sortie de l'input, mais j'avoue que je ne comprends pas trop ce que tu veux dire par "Input de type double" et ce que tu en attends

Re: [..] Input de type double

Posté : sam. 16 juin 2012 19:24
par Kagami
Je pense aussi faire un traitement de chaine mais je voulais savoir si il n'y avait pas un équivalent à $ES_NUMBER pour les nombres décimaux.

Re: [..] Input de type double

Posté : sam. 16 juin 2012 19:34
par mikell
Non

Re: [..] Input de type double

Posté : sam. 16 juin 2012 19:35
par Tlem
Vous êtes sûr que $ES_NUMBER bloque l'utilisation du point et/ou de la virgule ?

Là je ne peut pas tester (loin de mon PC), mais il me semble qu'on peut utiliser un des deux symbole ...

Re: [..] Input de type double

Posté : sam. 16 juin 2012 19:40
par mikell
Hé boss, j'ai testé avant de répondre... pour une fois :mrgreen:

Re: [..] Input de type double

Posté : sam. 16 juin 2012 19:48
par Kagami
Dans ce cas, je vais faire un contrôle de chaîne de caractères.
Merci :)

Re: [R] Input de type double

Posté : sam. 16 juin 2012 19:51
par mikell
Hum
Adapté d'un script du forum US, accepte les chiffres, le point et la virgule ^^
► Afficher le texte

Re: [R] Input de type double

Posté : sam. 16 juin 2012 21:17
par Kagami
Merci, mais je ne comprend pas trop cette fonction donc pour m'en servir, c'est pas trop ça ^^
En attendant, j'ai créé un truc simple, si l'utilisateur n'entre pas un nombre avec ou sans virgule (grâce à la fonction Nombre($Par1, 3)) ça fait apparaitre un label sur la fenêtre disant que l'entrée est incorrect.
La, je suis en train de m'occuper de mettre tous les nombres avec le même nombre de décimal.
J'ai mis ceci pour commencer mais ça ne marche pas, pourquoi?
► Afficher le texte

Re: [R] Input de type double

Posté : sam. 16 juin 2012 21:18
par mikell
^^

Code : Tout sélectionner

$nb = "12345"
msgbox(0,"", StringFormat("%.2f", $nb) )

$nb = "12345.678"
msgbox(0,"", StringFormat("%.2f", $nb) )

Re: [R] Input de type double

Posté : sam. 16 juin 2012 21:50
par Kagami
Merci, je suis vraiment nul en gestion de string >.<
Hum, j'ai encore un problème :< je suis décidément pas fait pour les chaines de caractères etoucequivaavec!

Code : Tout sélectionner

    ElseIf StringLen(StringMid($nombreArrivant, ".")) = 1 Then
        $nombreSortant = StringFormat("?", $nombreArrivant)
Pour voir si l'utilisateur a entré un format du genre "0.0", et le convertir en "0.00", j'ai essayé de voir combien il y avait de chiffre après le "." mais apparemment la fonction StringMid n'est pas approprié, pourtant il ne me semble pas en avoir vu une qui permettait cela.
Et après, pour le StringFormat, que dois-je mettre ?.?
Merci de m'apporter ton aide.

Re: [R] Input de type double

Posté : sam. 16 juin 2012 22:54
par mikell
Pourquoi tu te compliques la vie à vérifier ? tu appliques systématiquement, et le problème est réglé
Quel que soit le nombre entré, il sortira avec 2 décimales

Code : Tout sélectionner

$ton_nombre = StringFormat("%.2f", GuiCtrlRead($input) )

Re: [R] Input de type double

Posté : sam. 16 juin 2012 23:17
par Kagami
Ha oui, effectivement, c'est parfait :D
Encore merci :D