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

Langage Delphi Discussion :

Virgule et point décimal


Sujet :

Langage Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 111
    Points : 64
    Points
    64
    Par défaut Virgule et point décimal
    Bonjour à tous,

    Je suis sous Windows XP édition familiale et Delphi 4 standard.

    Dans la section initialization de ma fiche principale j'ai l'instruction :

    DecimalSeparator:='.';

    Pas de problème jusqu'à récemment. Mais un utilisateur sous Vista vient de me signaler que lorsqu'il saisissait un nombre décimal avec un point décimal cela déclenchait une exception et qu'il devait saisir ce nombre avec une virgule. Il m'a précisé que dans sa configuration de Vista il avait "spécifié vouloir utiliser la virgule plutot que le point".

    J'ignorais que sous Vista on pouvait choisir entre le point et la virgule et je m'étonne qu'avec l'instruction ci-dessus le point ne force pas la virgule.

    Merci d'avance à qui pourra m'apporter quelques éclaircissements.

  2. #2
    Membre éprouvé Avatar de defluc
    Homme Profil pro
    Architecte
    Inscrit en
    Mai 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 383
    Points : 1 199
    Points
    1 199
    Par défaut
    J'utilise Delphi 4 Pro sous Windows Xp et Vista Pro sans problème mais c'est ThousandSeparator que j'initialise.
    C'est peut-être à essayer supposant que si ThousandSeparator = '.', DecimalSeparator = ',' et inversément.

  3. #3
    Expert confirmé

    Profil pro
    Leader Technique
    Inscrit en
    Juin 2005
    Messages
    1 756
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Leader Technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 756
    Points : 4 173
    Points
    4 173
    Par défaut
    Citation Envoyé par Stevens.Georges Voir le message
    J'ignorais que sous Vista on pouvait choisir entre le point et la virgule et je m'étonne qu'avec l'instruction ci-dessus le point ne force pas la virgule.
    Ce n'est pas propre à Vista. Il te suffit d'aller dans le panneau de configuration et de changer tes options régionnales. Voir activer la toolbar des paramètres linguistiques... (cette s.... qui fait basculer ton clavier en qwerty parce que ton doit a fourché...).

    En fait, ce qu'il faut savoir c'est que lorsque tu modifies les paramètres régionnaux, Windows envoie un message à toutes les applications ouvertes pour leur dire que le paramétrage a changé et pour qu'elles se mettent à jour.
    Et la VCL traite cette événement automatiquement et modifie nottamment le DecimalSeparator sans que tu ne t'en rendes comptes...
    Il arrive aussi parfois que certaines applications provoquent l'envoi de ce message... J'ai déjà rencontré le même problème.

    Je ne sais pas si ça existait déjà en Delphi 4, mais tu as la propriété UpdateFormatSettings sur l'objet Application pour demander à la VCL de ne pas modifier automatiquement les paramètres régionnaux...
    Il te suffira de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Application.UpdateFormatSettings := false;
    DecimalSeparator := '.';
    Et ton DecimalSeparator ne devrait plus changer.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 28
    Dernier message: 26/01/2014, 13h15
  2. Séparateur décimal : virgule ou point
    Par Invité dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 14/11/2013, 12h19
  3. [Toutes versions] Reconnaissance du point et de la virgule comme caractère décimal
    Par Manon26 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 25/04/2013, 15h29
  4. Chiffre décimal, virgule et point
    Par _developpeur_ dans le forum VBA Access
    Réponses: 6
    Dernier message: 08/07/2011, 13h16
  5. [VBExpress2005] Point décimal/virgule dans un masque de saisie
    Par BassBeat dans le forum Windows Forms
    Réponses: 3
    Dernier message: 13/05/2006, 23h57

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