IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

le type double


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 121
    Par défaut le type double
    Bonjour à tous!
    voici j'ai declaré une varaible en double et cette variable là, je la mets dans un Edit .
    j'ai donné à Edit le formatFloat pour avoir par defaut le 0,00 comme valeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Edit_Recet1.Text:=FormatFloat('#,###,##0.00',0);
    ensuite je fais ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Edit_Recet1.Text:=FormatFloat('#,###,##0.00',StrToFloat(Edit_Recet1.Text));
    ensuite j'ai declaré celui-ci en double nRec1
    et et il reçoit Edit_Recet1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nRect1:=StrToFloat(Edit_Recet1.Text);
    Mais lorsqu'il reçoit une valeur comme 1000 , il m'affiche une erreur du style
    erreur de convertion " 1000 is not a valid float point value".
    je ne sais pas comme corriger la convertion.
    Merci pour votre aide!

  2. #2
    Membre Expert Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 553
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 553
    Par défaut
    Ce n'est pas très clair tout ça (et tu n'es pas dans le bon forum).
    Quelques pistes :
    1/ dans tes strToFloat() fais plutôt un strToFloat(Trim())
    2/ regardes si sur ton PC le séparateur décimal ne serait pas la virgule.

  3. #3
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    Salut
    Comme dit Philnext, ce n'est pas très clair.
    D'autant que je ne comprends pas l'intérêt de ce code ?
    Citation Envoyé par tchimou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Edit_Recet1.Text:=FormatFloat('#,###,##0.00',StrToFloat(Edit_Recet1.Text));
    @+

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Février 2006
    Messages
    624
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 624
    Par défaut
    tu as essayé 1000.0 ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 121
    Par défaut
    au fait, je voudrais que mon edit accepte du float, et je voudrais le mettre à defaut à 0,00 ; et ainsi chaque fois que je lancerai mon application que la veleur dans l'Edit soit 0,00 ; et lorsque j'entre une valeur, cette valeur doit se mettre en virgule flottante avec deux zero apèrs la virgule comme 1,00 ou 500,00 si j'entre 1 ou 500.
    c'est vrai que mon code est un peu confus.
    Si quelqu'un connait une solution à cela, merci de m'aider

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Février 2006
    Messages
    624
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 624
    Par défaut
    Non c'est clair.

    Utilises un TMaskEdit dans l'onglet supplement.

    Sinon si tu travailles sur des valeurs monétaires tu peux essayer cela:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.Edit1Exit(Sender: TObject);
    begin
     edit1.text := floattostrf(Strtofloat(Edit1.text), ffcurrency,10,2)
    end;
    La chaine est formattée en sortie du tedit( dépend des parametres régionaux de windows)

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 121
    Par défaut
    Ok merci je vais essayer comme vous avez dite.
    Merci

Discussions similaires

  1. Conversion de type double en texte
    Par CoachMac dans le forum C
    Réponses: 17
    Dernier message: 14/10/2006, 19h29
  2. [Socket] Send/Recv type double sur architectures différentes
    Par nicolas.pied dans le forum Réseau
    Réponses: 4
    Dernier message: 31/03/2006, 20h33
  3. Variable de type double
    Par Linaa dans le forum C
    Réponses: 16
    Dernier message: 21/01/2006, 13h04
  4. arrondi avec type double
    Par la drogue c'est mal dans le forum MFC
    Réponses: 6
    Dernier message: 08/04/2005, 17h51
  5. [LG]Convertir le type double en string
    Par @tom@ dans le forum Langage
    Réponses: 8
    Dernier message: 18/01/2004, 19h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo