Bonjour
Depuis 2 semaines quand j'utilise les MessageDlg('RS',MtWarning,MbYesNoCancel,0); sous Delphi 6
J'ai les termes Yes No cancel en anglais
J'ai regardé le projet est bien en francais
Merci d'avance pour votre aide
Bonjour
Depuis 2 semaines quand j'utilise les MessageDlg('RS',MtWarning,MbYesNoCancel,0); sous Delphi 6
J'ai les termes Yes No cancel en anglais
J'ai regardé le projet est bien en francais
Merci d'avance pour votre aide
Il me semble avoir déjà vus ce problème avec D6...
Il faut chercher dans le forum tu trouvera la solution.
Bonjour,
j'ai le même problème avec XE2 et personne n'a pu me dépanner. j'ai trouvé une solution, mais qui n'est pas terrible :
XE2 - Boutons en anglais
Comme toi, c'est arrivé un jour - pourquoi ? mystère
Sinon dans le FAQ, il y a aussi une solution en redéfinissant certaines constantes (mbYes, mbNo, ...)
A+
Charly
La definition des captions des boutons se fait dans l'unité Consts :
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 SMsgDlgWarning = 'Avertissement'; SMsgDlgError = 'Erreur'; SMsgDlgInformation = 'Information'; SMsgDlgConfirm = 'Confirmation'; SMsgDlgYes = '&Oui'; SMsgDlgNo = '&Non'; SMsgDlgOK = 'OK'; SMsgDlgCancel = 'Annuler'; SMsgDlgHelp = '&Aide'; SMsgDlgHelpNone = 'Aucune aide disponible'; SMsgDlgHelpHelp = 'Aide'; SMsgDlgAbort = '&Abandonner'; SMsgDlgRetry = '&Retenter'; SMsgDlgIgnore = '&Ignorer'; SMsgDlgAll = '&Tous'; SMsgDlgNoToAll = 'Non &pour tout'; SMsgDlgYesToAll = 'O&ui pour tout'; SMsgDlgClose = '&Fermer';
utilisation de consts dans Dialogs :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 implementation uses {$IF DEFINED(CLR)} System.Runtime.InteropServices, System.Collections, System.Threading, System.Drawing.Printing, System.Security.Permissions, System.IO, Types, {$IFEND} {$IF DEFINED(MSWINDOWS)} WideStrUtils, {$IFEND} ExtCtrls, Consts, Dlgs, Math, Themes, ActiveX, StrUtils, MultiMon, HelpIntfs;
Bonjour Dr Who,
dans mon VCL.Dialogs.pas j'ai ceci :
ce qui est un peu différent de ce que tu donnes. Je n'ose pas modifier ce fichier et je ne sais pas comment je pourrais régénérer un nouveau VCL.Dialogs.dcu
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 uses {$IF DEFINED(CLR)} System.ComponentModel.Design.Serialization, WinUtils, {$IFEND} {$IF DEFINED(LINUX)} WinUtils, {$IFEND} Winapi.Windows, Winapi.Messages, System.SysUtils, Winapi.CommDlg, Vcl.Printers, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.StdCtrls, Winapi.ShlObj, Winapi.CommCtrl, Vcl.ComCtrls, System.UITypes;
j'ai essayé un tas de truc, et ce qui fonctionne c'est de recopier Vcl.Consts.pas dans le répertoire de mes projets, de l'ajouter à mes projets. Si je compile et j'exécute, les boutons sont à nouveau en Français.
Mais tout cela reste mystérieux pour moi !
A+
Charly
S'il s'agit d'un problème lié a l’exécutable
j'ai eu ce problème en D3 avec des applications compilées avec paquets d'exécutions . Dans ces cas là il faut non seulement copier les .dpl mais aussi les .fr des paquets concernés soit dans sytem32 soit dans le repertoire de l'exécutable
Si cela le fait a l’exécution même dans l'IDE
il se peut qu'il s'agisse d'un élément dans la base de registre ( je ne me souviens plus quelle clé par contre) . En fait j'ai eu ce soucis avec D2010 et l'internationalisation , donc est-ce que la clé est la même /existe pour D6
Bonjour Serge,
merci pour ta réponse et désolé de m’immiscer dans le post de Fredoff, mais on a surement un Pb similaire.
J'ai Delphi 7 et XE2 sur ma machine Windows 7 64 bits Premium.
dans c:\Windows\Syswow64, j'ai des VCL et RTL 120, 150 et 70.bpl et aussi RTL70.fr et VCL70.fr (pas de 120 ni 150). Que dois-je ajouter ? VCL et RTL150.fr ?
Cela le fait aussi à l'exécution : de quel répertoire parles tu ? embarcadero\.... \bin ?
AndnotOr m'a donné pas mal de clefs à vérifier (voir le post cité précédement) - j'ai vérifié ces clefs qui semblent OK
A+
Charly
je pense que oui , quoique je ne connais pas encore toutes les subtilités du 64bits (je suis encore en 32)
non , je n'ai pas parlé de répertoireCela le fait aussi à l'exécution : de quel répertoire parles tu ? embarcadero\.... \bin ?
si je retrouve la mémoire , je ferais un signeAndnotOr m'a donné pas mal de clefs à vérifier (voir le post cité précédement) - j'ai vérifié ces clefs qui semblent OK
de retour, pour l'indication de la clé de registre citée plus haut ,
Pour D2010 il s'agissait
Clé Valeur
Software\CodeGear\Locales\nomduprogramme=codelangue
ce qui permet d'ailleurs de tester des localisations sur son poste
par curiosité , j'ai regardé pour les anciennes versions installées , je trouve ces informations également pour D7 et D2006 . Je n'ai jamais installé D6 et mes versions D4 et D5 sont sur un autre PC (en panne depuis .....bref je m'en sers plus)
sous XE2 c'est :
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Embarcadero\Locales
et
HKEY_CURRENT_USER\Software\Embarcadero\Locales
mais tout est à FR dans ces clefs ...
Merci d'avoir cherché, je vais me contenter de ma solution bancale (ajout de VCL.Consts.pas dans chacun de mes projets) !
A+
Charly
les constantes resultmodale sont compatibles avec MessageBox
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if MessageBox(0,'texte','text',$33) = mrOk then ...
OK, merci Montor, je vais me rabattre sur MessageBox
A+
Charly+
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager