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

Composants VCL Delphi Discussion :

Problème de traduction avec DKLang Translation Editor


Sujet :

Composants VCL Delphi

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2012
    Messages : 238
    Points : 77
    Points
    77
    Par défaut Problème de traduction avec DKLang Translation Editor
    salam


    pour commencer je tien a précisé que j'ai bien cherchez avant de poster ce message .

    j'essaye de rendre mon application multi-langue .pour cela j'ai utilisé le composant dklang (juste pour l'installez ça ma pris une nuit blanche puisque je suis débutant mais motivé)
    j'ai bien introduit le composant dk est le tcombobox j'ai même inséré les bout de code qu'il faut comme suite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure TfMain.cbLanguageChange(Sender: TObject);
      var iIndex: Integer;
      begin
        iIndex := cbLanguage.ItemIndex;
        if iIndex<0 then iIndex := 0;// pour la langue par défaut
        LangManager.LanguageID := LangManager.LanguageIDs[iIndex];
      end;
    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
    procedure TFMain.FormCreate(Sender: TObject);
      var i: Integer;
     
    begin
    if FileExists(ExePath + 'DEDAX.JPG') then
      ImgMain.Picture.LoadFromFile(ExePath + 'DEDAX.JPG'); //ça c'est pour autre chose
     
      begin
     
        LangManager.ScanForLangFiles(ExtractFileDir(ParamStr(0)), '*.lng', False);
     
        for i := 0 to LangManager.LanguageCount-1 do cbLanguage.Items.Add(LangManager.LanguageNames[i]);
     
        cbLanguage.ItemIndex := 0;
      end;
    je me suis beaucoup basez sur ce topic http://www.developpez.net/forums/d41...s-unicode-non/


    jusqu’ici tous va bien ... mon problème c'est que mon application est en français mais dklang me met en défaut sur anglais ce problème je peut le résoudre comme suite"cbLanguage.ItemIndex := 1;"en créant un fichier .lng en français ... le deuxième problème c'est au niveau du DKLang Translation Editor normalement il génère des fichier lng traduisez et prêt mais chez moi il n’effectue aucune traduction il faut peut être installé un dictionnaire sur delphi ou quelque chose de ce genre ... voila je vous remercie a l'avance pour vos repense.

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 560
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 560
    Points : 25 156
    Points
    25 156
    Par défaut
    A mon avis, les fichiers ne sont pas traduits !
    Effectivement, il faudrait prévoir autant de dictionnaire que des langues qui existent, j'ignore comment Google gère cela, a-t-il tous les combinaisons donc L*(L-1) dictionnaire !
    Ensuite, tu as la grammaire, regarde sur Word, en général, tu n'as que l'Anglais, installé par défaut, plus les langues ajoutées comme le Français ou l'Arabe !
    Tu imagines vraiment pouvoir utiliser un traducteur automatique pour traduire ton application ? Tu as vu ce que donne parfois Google Translate comme résultat, cela aide mais c'est parfois une succession de mot qui ne vont pas ensemble !

    Tu ne pensais quand même pas que la traduction était automatique ? ?
    Tu as sous-estimé le travail de l'internationalisation !

    DKLang va créer les fichiers par langue pour que tu penses à les traduire
    Pour lui c'est plus simple d'utiliser un seul fichier LNG à la fois (sinon il faudrait qu'il gère un LNG partiellement traduit + le LNG natif)

    TU devras traduire les libellés, vu que tu écris en phonétique pour le français, tu devrais faire appel à un traducteur professionnel, dans les entreprises dans lesquelles j'ai travaillé, on m'a filé les traductions portugaises ... à partir des libelles français orignaux (pour l'anglais disons qu'a part les termes métiers, on peut se débrouiller)
    Il évident que la traduction n'est pas ton métier et qu'il te faut de l'aide pour ce travail

    En général, un fichier excel suffit, simple à manipuler pour un traducteur qui a des notions informatiques sans être développeur !
    si ton outil le permet, tu aussi fournir le fichier et l'outil

    ITE de Delphi a un module externe pour être traduit par un non-développeur

    En tout cas, c'est ce que j'ai observé dans la plupart des outils, par défaut, il conserve la langue native du projet génère un fichier de traduction par langue, par défaut ce fichier est le même que la langue native du programme, il faut remplacer les libelles d'origine par la version traduite !

    Pense que selon la langue les textes sont plus ou moins long, en portugais cela atteind comme 130% du texte anglais, il faut donc le prévoir dans son Design

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2012
    Messages : 238
    Points : 77
    Points
    77
    Par défaut dbgrid
    merci beaucoup ShaiLeTroll ... mon application est simple a traduire en général c'est des captions de 2 a trois mots j'ai suivie ce que tu ma dis j'ai créer les fichier des langues souhaité et j'ai fais la traduction sur google ça c'est bien passé mais puisqu'il y'a toujours un mais j'ai remarquez que dk lang ne reconait pas les captions des dbgrid et stringgrid ,donc voila il me reste plus qu'a les traduire et mon projet multi-langue s’achève ...et je tien a te remercier une deuxième fois .

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    707
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 707
    Points : 777
    Points
    777
    Par défaut
    Tout ce que je peux dire c'est que j'ai utilisé DKLang il y a très longtemps, tellement longtemps que ne me rappelle plus du "comment ça fonctionne", mais j'en ai gardé un bon souvenir, à l'époque je l'avais trouvé simple et efficace par rapport aux autres solutions que j'avais testées (ou abordées = dégoûté avant même d'avoir essayé !).

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2012
    Messages : 238
    Points : 77
    Points
    77
    Par défaut
    dommage que tu ne te rappelle plus moi aussi il ma beaucoup plu ce composant... j'ai deux applications qui se ressemblent en général la première je lé traduit en recompilant le projet 4 fois 1 fois pour chaque langue et ça ma prix 1 semaine et avec la deuxième j'ai essayé avec dk lang et ça ma prix 2 jours jusque la... mais pour la prochaine fois ça va me prendre (juste le temps de faire la traduction) ,enfin si je résous ce problème de dbgrid ... merci comme même.

    Citation Envoyé par GoustiFruit Voir le message
    Tout ce que je peux dire c'est que j'ai utilisé DKLang il y a très longtemps, tellement longtemps que ne me rappelle plus du "comment ça fonctionne", mais j'en ai gardé un bon souvenir, à l'époque je l'avais trouvé simple et efficace par rapport aux autres solutions que j'avais testées (ou abordées = dégoûté avant même d'avoir essayé !).

  6. #6
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2012
    Messages : 238
    Points : 77
    Points
    77
    Par défaut
    toujours pas de solution pour les dbgrid

  7. #7
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 097
    Points : 41 087
    Points
    41 087
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    Je remonte ce sujet bien que vieux , car j'utilise pour la première fois ce composant (qui serait également fonctionnel pour XE5 VCL et FMX je le signale au passage).

    Pour répondre à adelcrb , et bien que je n'en sois encore qu'au début de mes tests , je ne vois pas ou se situe le problème , j'ai une grille et traduit le titre de ses colonnes sans aucune difficultés !
    Je me pose/posais plus de question sur tout ce qu'il n'y a pas à traduire (SQL, Nom de Champs etc...) mais en éditant les fichiers .lng produits je m'aperçois que le non traduit n'est pas inclus (ouf, je craignais l'injection de SQL par exemple) .

    Si intéressés (Plussez), et je pourrais alors , à l'occasion, faire part de mes essais et du pourquoi de mon choix
    (il semble qu'il n'y ait pas de tutoriel DKLang en français , heureusement j'en ai trouvé un en espagnol)
    et traduire/mettre mon grain de sel dans un tuto

  8. #8
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2012
    Messages : 238
    Points : 77
    Points
    77
    Par défaut
    salut sergio

    puisque tu t'es mis a travailler avec ce composant je vais t'exposer mon problème :


    j'ai créer une application(multi-forme) en multi-langue et pour cela j'ai utilisé le composant dklang .

    quant je lance mon application et je change de langage et bien tous ce passe a merveille et sur tous les formes ,le problème c'est quant je sort d'une forme quelconque(a part la forme principale) et je revient dessus ,la langue est réinitialisé a la langue par défaut et même si j’essaye de la changé a nouveau ,rien ne ce passe .

    récapitulation

    au démarrage : si je change ,toutes les langues sont pris en charge et sur toutes les formes.
    quant je bascule entre les formes: la forme principale et toujours sur la langue sélectionner par contre toutes les autre formes prennent la langue initiale(par défaut).
    quant je bascule entre les langues après avoir basculer entre les formes : la forme principale réagis toujours et prend la langue sélectionner mais les autres formes ne réagissent pas et reste sur la langue originale.

    merci.

  9. #9
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 097
    Points : 41 087
    Points
    41 087
    Billets dans le blog
    62
    Par défaut
    Bonjour,
    Citation Envoyé par adelcrb Voir le message
    puisque tu t'es mis a travailler avec ce composant je vais t'exposer mon problème :
    Disons plutôt que j'avais deux applications simples (une seule forme chaque) à traduire et que dgxgettext ne me convenait pas pour des raisons d'installation !

    je n'ai donc pas rencontré ton problème , mais je pense qu'il s'agit d'un problème de rafraichissement des formes (il faudrait que je fasse un essai) .
    Comment affiches-tu tes formes a partir de la forme principale (MDI, Docking autre ....)

  10. #10
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2012
    Messages : 238
    Points : 77
    Points
    77
    Par défaut
    ça doit être ça oui "problème de rafraichissement" parce qu’a chaque fois que je sort d'une forme je doit la fermer . sinon pour répondre a ta question :j'ai un pagecontrole que j'utilise ces pages pour afficher les formes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if maform2 = nil then
        begin
         maform2 := Tmaform2.Create(form2);
         maform2.Parent := Tabform2;
         maform2.Align := alClient;
        end;
    sinon pour fermer a chaque fois que je sort je fait
    voila merci d'avance.

  11. #11
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 097
    Points : 41 087
    Points
    41 087
    Billets dans le blog
    62
    Par défaut
    Re,

    Donc tu fais du docking .

    le problème est que , lorsque ta forme est dockée , elle n'est pas retraduite lorsque tu changes la langue au niveau de la forme principale , ce qui est logique .
    as-tu essayé un refresh (ou invalidate ou Update) de chaque forme dockée ?

  12. #12
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2012
    Messages : 238
    Points : 77
    Points
    77
    Par défaut
    non j'ai pas essayer c'est ce que je vais faire toute suite ... si je comprend bien je doit faire un refresh de ma mainform a chaque fois que j’accède a une forme et ça je le fait sur l'événement OnCreate !

  13. #13
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2012
    Messages : 238
    Points : 77
    Points
    77
    Par défaut
    je viens d’essayer le rafraichissement mais ça marche pas , je lé fait a plusieurs endroit avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Update;
    Refresh;
    Invalidate;
    mais ça n'a rien donner peut être qu'il faut les mettre sur un événement précis .
    petite information : j'ai remarqué que je peut changer de langue tant de fois que je veut , temps que j'ai pas fermer une de mes formes si cela arrive et que je réouvre la langue de cette dernière restera sur la langue initiale .

  14. #14
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 097
    Points : 41 087
    Points
    41 087
    Billets dans le blog
    62
    Par défaut
    Citation Envoyé par adelcrb Voir le message
    non j'ai pas essayer c'est ce que je vais faire toute suite ... si je comprend bien je doit faire un refresh de ma mainform a chaque fois que j’accède a une forme et ça je le fait sur l'événement OnCreate !
    non , pour ce qui est de l'évènement je voyais plutôt cela lorsque l'on change de langue .
    pour ce qui est des refresh/repaint/invalidate ou autre je pensais plutôt a une boucle sur les formes dockées

    je ne suis pas sur d'être clair . Comme je bloque sur ce que je suis en train de faire (et qui contient des frames dockées) , je n'avais pas encore pensé traduction mais je vais faire un essai .

  15. #15
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2012
    Messages : 238
    Points : 77
    Points
    77
    Par défaut
    j’espère que ton essai portera ces fruit sinon pour moi ,puisque j'ai complétement bloqué j'ai décidé (temporairement,le temps que vous me trouviez une ,) d'intégré tous mes formes a la main forme mais la aussi j'ai eu des problèmes:
    Nom : Capture.JPG
Affichages : 337
Taille : 17,7 Ko

    j'ai eu même ça

    Nom : 10550206_747899851941189_178061061_o.jpg
Affichages : 333
Taille : 16,0 Ko

    et ça

    Nom : Capture.JPG
Affichages : 351
Taille : 21,5 Ko

    j'avoue je suis perdu la .

  16. #16
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 097
    Points : 41 087
    Points
    41 087
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    mon essai , pour l'instant est je ne comprends pas ! toutes les démos montre dans le combobox le langage 'source' et les traductions disponibles dès que je fais un essais seules les traductions dispos apparaissent dans une nouvelle application !
    Pour ce qui est des démos par contre tout est nickel , aussi bien en MDI que Frames (ce qui ne veut pas dire que des frames ou formes dockées se rafraichissent , il me semble d'ailleurs avoir lu un WARNING à ce sujet)

    je m'occupe donc d'abord de mon problème de chargement des langues dispo en premier lieu

Discussions similaires

  1. Problème avec le Compare Editor d'Eclipse
    Par maxxper59 dans le forum Eclipse
    Réponses: 1
    Dernier message: 11/10/2008, 12h38
  2. Réponses: 3
    Dernier message: 04/08/2008, 17h32
  3. Problème de JContentPane avec V Editor
    Par ericmakita dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 09/07/2008, 15h45
  4. [D7/Win32] Problème de traduction avec dxGetText
    Par _Alain_ dans le forum Débuter
    Réponses: 3
    Dernier message: 30/03/2008, 22h03
  5. [FASM=>NASM] Problème traduction avec MOD et $
    Par SteelBox dans le forum Assembleur
    Réponses: 4
    Dernier message: 30/05/2005, 14h16

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