[RESOLU] Décimales

Questions à propos du scripting. Hors Shader, GUI, Audio et Mobile.
jyd
Messages : 7
Inscription : 10 Jan 2021 14:47

[RESOLU] Décimales

Message par jyd » 10 Jan 2021 15:26

J'ai un calcul qui fonctionne si je ne mets pas de décimales dans deux InputField. Comment faire pour que ça fonctionne avec des décimales? Merci à vous si vous avez une solution, je suis débutant.
Voici le script:

Code : Tout sélectionner

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class CalculDistance : MonoBehaviour
{
    //InputField
    public InputField Hamer;
    public float VHamer;
    public InputField Sextant;
    public float VSextant;

    //Champ texte
    public Text TextDistance;
    public float td;

    public void calculDistance()
    {
        VHamer = float.Parse(Hamer.text);
        VSextant = float.Parse(Sextant.text);

        td = (1.856f * VHamer) / VSextant;

        TextDistance.text = td.ToString("F2");
    }
}

Avatar de l’utilisateur
Max
Messages : 8763
Inscription : 30 Juil 2011 13:57
Contact :

Re: Décimales

Message par Max » 10 Jan 2021 15:45

Bonjour,

tu as deux solutions.
La première est de rentrer tes données dans l'InputField non pas avec un point mais une virgule
(donc 123,45 au lieu de 123.45).
Sinon, autre méthode, parser en spécifiant le type de CultureInfo.
donc écrire:

Code : Tout sélectionner

VHamer = float.Parse(Hamer.text, System.Globalization.CultureInfo.InvariantCulture);
ce qui devrait solutionner ton soucis.
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

jyd
Messages : 7
Inscription : 10 Jan 2021 14:47

Re: Décimales

Message par jyd » 10 Jan 2021 16:38

Super, c'est la solution. Merci !!!!!

Répondre

Revenir vers « Scripting »