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 :

Passage à Delphi 10.1 Berlin update 1


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 678
    Billets dans le blog
    2
    Par défaut Passage à Delphi 10.1 Berlin update 1
    Bonsoir,

    Je viens de passer à l'update 1 de Delphi Berlin 10.1 (et accessoirement à Windows 10 "Anniversaire"). Depuis, je constate que le code suivant affiche les boutons de la boite de dialogue en anglais alors que Windows est paramétré en français :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Vcl.Dialogs.MessageDlg('Essai', mtConfirmation, [mbYes, mbNo, mbYesToAll, mbNoToAll, mbCancel], 0, mbYes);
    Alors qu'avant le passage à l'update 1, les boutons s'affichaient bien en français lorsque Windows était paramétré en français.

    A noter, qu'en utilisant MessageBox, avec le code ci dessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    messagebox(0,'Essai','ceci est un essai', MB_YESNOCANCEL+mb_iconinformation);
    les boutons de la boite de dialogue sont bien en français.

    Avez vous déjà constaté cela et comment y remédier ? (il n'y a pas d'équivalent aux valeurs mbYesToAll et mbNoToAll dans le messagebox)

    Je vous remercie par avance pour vos réponses.
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  2. #2
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    Bonjour,

    C'est surprenant, Vcl.Dialogs.MessageDlg est une fiche crée par Delphi; le texte des boutons provient de Vcl.Consts qui contient des resourcestring, en français normalement.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 678
    Billets dans le blog
    2
    Par défaut
    Bonjour Paul,

    Oui c'est surprenant
    Pour le test, il suffit de faire une nouvelle application VCL, de poser un TButton sur la fiche et dans l'événement Onclick du bouton mettre le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    unit Unit1;
     
    interface
     
    uses
      Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
      Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
     
    type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Déclarations privées }
      public
        { Déclarations publiques }
      end;
     
    var
      Form1: TForm1;
     
    implementation
     
    {$R *.dfm}
     
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      Vcl.Dialogs.MessageDlg('Essai', mtConfirmation, [mbYes, mbNo, mbYesToAll, mbNoToAll, mbCancel], 0, mbYes);
      messagebox(0,'Essai','ceci est un essai', MB_YESNOCANCEL+mb_iconinformation);
    end;
     
    end.
    Voici la capture d'écran du premier message (MessageDlg):
    Nom : messagedlg.png
Affichages : 467
Taille : 2,5 Ko

    et voici la capture du second message (MessageBox) :
    Nom : messagebox.png
Affichages : 554
Taille : 2,2 Ko


    J'ai fait également l'essai sous Firemonkey. Le code suivant affiche les boutons en anglais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FMX.Dialogs.MessageDlg('Test', System.UITypes.TMsgDlgType.mtConfirmation, FMX.Dialogs.mbYesAllNoAllCancel, 0, System.UITypes.TMsgDlgBtn.mbNoToAll);
    alors que le code suivant affiche les boutons en français :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FMX.Dialogs.MessageDlg('Test', System.UITypes.TMsgDlgType.mtConfirmation, FMX.Dialogs.mbYesNo, 0, System.UITypes.TMsgDlgBtn.mbNoToAll);
    Lors de la mise à jour de Delphi, j'ai bien sélectionné la langue française.

    Cordialement,
    Grégory.
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  4. #4
    Membre Expert
    Avatar de Thierry Laborde
    Homme Profil pro
    N/A
    Inscrit en
    Avril 2002
    Messages
    1 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : N/A

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 391
    Par défaut
    Bonjour,

    Dans le répertoire BIN de l'installation de votre Delphi. Normalement :

    C:\Program Files (x86)\Embarcadero\Studio\18.0\bin

    Vous trouverez l'exe : BDSSetLang.exe

    En le lançant vous trouverez 2 onglets le 1er pour modifier la langue de l'IDE et le 2ème pour modifier la langue des librairies. Une fois la modification faite il faudra bien entendu relancer Delphi.

  5. #5
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 678
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    Je vous remercie pour votre réponse. Je ne connaissais pas l'utilitaire BDSSetLang.exe.

    Malheureusement pour moi, sur les 2 onglets la langue française était déjà sélectionnée. J'ai modifié pour mettre en anglais puis relancé Delphi : le comportement toujours identique.
    J'ai fermé Delphi, reparamétré en français sur les 2 onglets et relancé Delphi. J'ai toujours le comportement curieux...

    Le comportement est identique lorsque j'exécute project1.exe sur un PC équipé de Windows 7 français.

    Par contre, j'ai essayé en compilant (mon test VCL) en 64 bits, et là j'ai bien les boutons en français !

    Y aurait il un paramétrage qui m'échappe dans les options du projet en Windows 32 bits (le projet de test n'a rien d'extraordinaire : Fichier / Nouveau / Application fiches VCL Delphi) ?

    Cordialement,
    Grégory.
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  6. #6
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 678
    Billets dans le blog
    2
    Par défaut
    J'ai oublié : l'exemple avec Firemonkey compilé en Windows 64 bits :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FMX.Dialogs.MessageDlg('Test', System.UITypes.TMsgDlgType.mtConfirmation, FMX.Dialogs.mbYesAllNoAllCancel, 0, System.UITypes.TMsgDlgBtn.mbNoToAll);
    => les boutons s'affichent aussi en français alors qu'en 32 bits, ils s'affichent en anglais.
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

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

Discussions similaires

  1. Delphi 10.1 Berlin Update 1 disponible
    Par Thierry Laborde dans le forum Delphi
    Réponses: 7
    Dernier message: 20/09/2016, 08h53
  2. Problème passage Delphi 7 à Delphi XE
    Par Alex39570 dans le forum Langage
    Réponses: 5
    Dernier message: 23/06/2011, 10h28
  3. Réponses: 0
    Dernier message: 17/01/2011, 18h03
  4. pb passage delphi 6 a delphi 2007
    Par el.meyo dans le forum Langage
    Réponses: 5
    Dernier message: 26/11/2008, 10h41
  5. [Kylix] Passage Delphi/Kylix
    Par JP.NUAGE dans le forum EDI
    Réponses: 2
    Dernier message: 03/04/2006, 19h29

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