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 :

Francophone format booleen


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Femme Profil pro
    Auditeur informatique
    Inscrit en
    Février 2019
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2019
    Messages : 53
    Par défaut Francophone format booleen
    Bonjour,

    Une petite question toute bête !

    Sous Delphi XE8, Est il possible d'afficher dans un TEdit la valeur d'un attribut boolean en français ?c'est à dire (Vrai / faux, Oui/Non) au lieu de (True/False )
    Peut etre cela dépend de la langue de la version delphi utilisé, mais ça m'affiche que'en anglais !!

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 598
    Billets dans le blog
    65
    Par défaut
    Bonjour,

    rien n'empêche de changer TrueBoolStrs et FalseBoolStrs

    en exemple : TrueBoolStrs[0]:='Oui'; mais ce n'est certainement pas la meilleure manière de faire il y a un moyen (une fonction?) qui permet de rajouter des chaines à ces deux tableaux mais je ne remets pas le clavier dessus

    [Edit] toujours pas trouvé mais voici un petit truc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    procedure TMainForm.Button1Click(Sender: TObject);
    begin
       if BoolTostr(true,true)='Oui' then exit;      // a le mérite d'initialiser TrueBoolStrs
       SetLength(TrueBoolStrs, 3);
       TrueBoolStrs[1]:=BoolToStr(True,True);
       TrueBoolStrs[0]:='Oui';   // Oui devient l'affichage par défaut
       TrueBoolStrs[2]:='O';
       if StrToBool('Oui') then  Memo2.Lines.add('Oui est ok');
       if StrToBool('O') then  Memo2.Lines.add('O est ok');
       if StrToBoolDef('Z',False) then  Memo2.Lines.add('Z est ok');
       Memo2.Lines.Add('BoolTostr '+BoolToStr(True,True))
    end;
    un code plus simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    procedure TMainForm.Button1Click(Sender: TObject);
    begin
       if BoolTostr(true,true)='Oui' then exit;      // il faut initialiser 
      // on localise 
        TrueBoolStrs:=['Oui','True','O'];
        FalseBoolStrs:=['Non','False','N']);
    // test 
       if StrToBool('Oui') then  Memo2.Lines.add('Oui est ok');
       if StrToBool('O') then  Memo2.Lines.add('O est ok');
       if StrToBoolDef('Z',False) then  Memo2.Lines.add('Z est ok');
       Memo2.Lines.Add('BoolTostr '+BoolToStr(True,True))
    end;
    je suggère quand même de garder 'True' et 'False' juste au cas où pour les Livebindings

  3. #3
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 934
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 934
    Par défaut
    C'est pas nécessaire (ou en tout cas plus sous les Delphi récents). Uniquement TrueBoolStrs := ['Oui','True','O'];

  4. #4
    Membre actif
    Femme Profil pro
    Auditeur informatique
    Inscrit en
    Février 2019
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2019
    Messages : 53
    Par défaut
    Merci de votre réponse

    Ce Code nécessite l'implantation d'un bouton, mais ce n'est malheureusement pas ce que je recherche, car j'aimerai utiliser un "DBNavigator" pour voir défiler les valeurs d'attributs dans un Edit par exemple

    La première méthode que vous m'avez proposé me semble meilleur (TrueBoolStrs[0]:='Oui') mais hélas mes connaissances basiques en Delphi ne me permette pas de trouver cette méthode
    J'ai cherché dans les propriétés mais je ne trouve pas

    Pourriez vous me donner plus de d'info sur celle ci ? Merci

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 598
    Billets dans le blog
    65
    Par défaut
    Re,

    @Andnotor si j'ai indiquer la nécessité d'initialiser c'est que j'ai lu ceci
    Citation Envoyé par http://docwiki.embarcadero.com/Libraries/Rio/fr/System.SysUtils.StrToBool
    Remarque : Les variables TrueBoolStrs et FalseBoolStrs ne sont pas définies au démarrage d'une application. Toute utilisation de la routine StrToBool, BoolToStr ou TryStrToBool provoque l'initialisation de ces variables avec les valeurs par défaut ci-dessus.
    @mimiferry
    je n'ai mis ce code que pour illustrer mon propos. Dans le OnCreate de votre forme il vous suffirait d'écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
       if BoolTostr(true,true)<>'Oui' then       // il faut initialiser 
        begin
        // on localise 
        TrueBoolStrs:=['Oui','True','O'];
        FalseBoolStrs:=['Non','False','N']);  
        end;
    s'il s'avérait que la mise en garde sur l'initialisation soit fausse alors les deux lignes importantes ne seraient que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        TrueBoolStrs:=['Oui','True','O'];
        FalseBoolStrs:=['Non','False','N']);
    ces deux variables sont contenues dans System.SysUtils qu'il faut donc, bien sûr, ajouter à la liste des uses

  6. #6
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 934
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 934
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    la mise en garde sur l'initialisation
    Initialiser pour ré-initialiser juste derrière n'a pas de sens

    C'est juste une "remarque", pas une "mise en garde". Ça indique simplement que si on n'a pas pris soin de définir les textes, ce sont des textes par défaut qui sont utilisés.

  7. #7
    Membre actif
    Femme Profil pro
    Auditeur informatique
    Inscrit en
    Février 2019
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2019
    Messages : 53
    Par défaut
    ça fonctionne très bien

    Merci encore de votre réponse !

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

Discussions similaires

  1. [MySQL] Afficher mes dates MySQL en format "long" francophone
    Par Falcokeo dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 01/03/2008, 15h33
  2. [Dates] Convertir format anglophone vers francophone
    Par mickado dans le forum Langage
    Réponses: 2
    Dernier message: 22/07/2007, 19h00
  3. [MySQL] Probleme de conversion de date en format francophone
    Par bilou95 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 21/11/2006, 11h40
  4. [Conception] Récupérer une date au format francophone
    Par HwRZxLc4 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 08/11/2006, 16h15
  5. Comment convertir une date MySQL au format francophone ?
    Par bilane dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 11/09/2006, 10h44

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