fichier langue de windows (delphi)

fichier langue de windows (delphi) - Delphi/Pascal - Programmation

Marsh Posté le 03-04-2002 à 11:27:30    

Bonjour ,  
je developpe sur Delphi , et pour l'internationalisation
du logiciel j'ai quelques problemes.
J'ai toutes les resourceStrings dans une base de données  
avec leur traduction ( 3000 enreg) et je souhaiterai creer  
un fichier MonProg.FRA par exemple pour que la traduction  
se fasse sans probleme.

Reply

Marsh Posté le 03-04-2002 à 11:27:30   

Reply

Marsh Posté le 03-04-2002 à 11:43:13    

C'est peut-être pas ce dont tu as besoin exactement... Mais j'ai développer dernièrement une application multi-langues. Pour m'en sortir j'ai créer un fichier au format INI que tu peux appeler comme tu veux...
 
Contenu:
 
[French]
NomBouton=Annuler
NomLabel=Fichier
 
[English]
NomBouton=Cancel
NomLabel=File
 
...


---------------
Plus un ordinateur possède de RAM, plus vite il peut générer un message d'erreur.
Reply

Marsh Posté le 03-04-2002 à 11:47:55    

le probleme c'est la longueur du prog .
C'est un projet de 800 000 lignes !!!
donc si je dois modifier toutes les utilisations  
des resourceStrings , j'ai pas fini!!!
Sinon l'utilisation d' un ini est pas mal

Reply

Marsh Posté le 03-04-2002 à 11:49:41    

J'ai fait le même genre de trucs, mais moi c'était un .ini par langue, du style:
 
[MainForm]
MainForm.Caption=....
MainForm.Button1.Caption=...
MainForm.Edit1.Left=...
 
etc...
Et l'appel via:
 
Translator.Language := 'Francais';
Translator.Translate(['MainForm', 'OptionsForm']);
 
Un truc du genre.
C'est un truc "fait maison" mais ça fonctionne, je peux éventuellement donner cette unit.
 
Pour le problème des resourcesstring, j'ai sur chaque form un petit composant comportant une TStringList (seuls les composants accessibles depuis les Form sont pris en compte). Donc les chaînes de ce composant sont automatiquement remplacées lors de la traduction, et pour les utiliser je fais :
ShowMessage(Messages.Strings[un_index]);
par exemple
(Messages = la TStringList, et un_index = une constante entière)

 

[jfdsdjhfuetppo]--Message édité par antp--[/jfdsdjhfuetppo]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 03-04-2002 à 12:10:04    

Moi si tu veux j 'ai fait une form ancetre de toutes les autres
qui s'occupe de la traduction des propriétés des composants...
mais je n'ai rien fait pour les resourcesStrings.
Moi si tu veux je ne voudrais pas toucher aux autres fichiers ( 2800 ) mais seulement trouver une solution qui se mettrait dans
ma form ancetre et qui modifirait toutes les resourcesString
en allant chercher les traductions dans une base , un ini ...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed