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 :

[Application multi-langues] Compilateur ou fichier lng ?


Sujet :

Composants VCL Delphi

  1. #1
    Teb
    Teb est déconnecté
    Membre à l'essai
    Inscrit en
    Juillet 2004
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 21
    Points : 13
    Points
    13
    Par défaut [Application multi-langues] Compilateur ou fichier lng ?
    Bonjour,

    je tiens à préciser tout d'abord que je me lance dans le delphi, donc excusez moi pour les questions un peu bê-bête !!!
    J'ai vu en parcourant les forums qu'il existe deux moyens de faire une application multi-langue, soit avec l'aide des ITE lors de la compilation, donc on crée autant d'application que de langue voulue. Soit avec l'aide d'un fichier lng ou ini.

    Ma question est alors la suivante, est-ce qu'avec un fichier lng ou ini, tous les labels des objets peuvent etre modifiés ? Par exemple les boutons oui/non/annuler, peuvent-ils devenir yes/no/cancel, avec ce type de fichier ? Ou y a t-il des labels que l'on ne peut modifier qu'avec les ITE ?

    Merci de vos réponses!

  2. #2
    Membre averti

    Profil pro
    Enseignant
    Inscrit en
    Juillet 2003
    Messages
    296
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juillet 2003
    Messages : 296
    Points : 441
    Points
    441
    Par défaut
    Personnellement, j'utilise le composant DKlang, qui permet de gérer facilement les fichiers lng (qu'il génère lui même). Il est très simple à utiliser.

    Sinon, sans ce compo, tu devras jouer avec la propriété TAG de chaque composant à renommer, afin de leur attribuer une ID unique. Ca marche aussi, mais c'est plus long...
    Contactes-moi si tu veux plus de précisions

  3. #3
    Teb
    Teb est déconnecté
    Membre à l'essai
    Inscrit en
    Juillet 2004
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 21
    Points : 13
    Points
    13
    Par défaut
    Simplement une confirmation : avec un fichier lng, on peut traduire en entier une application ?

    Combien de temps cela peut prendre pour un application, avec un menu non changeant, avec un formulaire (pour avoir une base) contenant 20 labels, etc.

    Merci!

  4. #4
    Membre averti

    Profil pro
    Enseignant
    Inscrit en
    Juillet 2003
    Messages
    296
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juillet 2003
    Messages : 296
    Points : 441
    Points
    441
    Par défaut
    avec DKLang, je sais pas, 30sec peut-être
    En fait, ce compo est simple d'emploi : tu ajoutes le composant sur la/les fiche(s) à traduire, et il te génère un fichier (appli.dklang). Tu ouvres ce fichier avec le programme fourni avec le compo (DKEdit, je crois), et tu traduis toutes les occurences.
    Le compo gère tout ce qui peut être traduit, et tu peux même ajouter des phrases (comme le texte d'une messageBox, par exemple).

    Le fichier lng que tu obtiens pemret de traduire à chaud toute l'application.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 298
    Points : 318
    Points
    318
    Par défaut
    Citation Envoyé par Big
    Personnellement, j'utilise le composant DKlang, qui permet de gérer facilement les fichiers lng (qu'il génère lui même). Il est très simple à utiliser.

    Sinon, sans ce compo, tu devras jouer avec la propriété TAG de chaque composant à renommer, afin de leur attribuer une ID unique. Ca marche aussi, mais c'est plus long...
    Contactes-moi si tu veux plus de précisions
    Il marche comment cet outil ? c'est transparent ou il faut appeler une fonction pour récuperer le texte dans la bonne langue (par ex. Label.Caption := GetLocale(id_text)) ?

    Est ce qu'il est possible de changer le langage à la volée ?

  6. #6
    Membre averti

    Profil pro
    Enseignant
    Inscrit en
    Juillet 2003
    Messages
    296
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juillet 2003
    Messages : 296
    Points : 441
    Points
    441
    Par défaut
    en fait, il ne faut rien faire de spécial. Il y a juste deux ou trois lignes de code à mettre, concernant la sélection de la langue. Et encore, le compo fait un listing de tous les fichiers lng. Tu sélectionnes celui correspondant à la langue voulue, et toute l'application est traduite.

    Pour les messages "constants" (comme le message d'une messageBox, par exemple), là tu dois appeler une fonction spéciale, qui marche comme un fichier ini : tu lui donne le nom de la constante, et il te renvoie la valeur correspondante.

    Le seul petit problème que j'ai rencontré, c'est que par défaut, il croit que la langue "native" de l'application, c'est l'anglais. Mais bon, ça change rien, il faut mettre dans le OnCreate de la fiche principale le code correspondant à la bonne langue .

Discussions similaires

  1. Bien créer une application multi-langues ? Unicode ou non ?
    Par Maxime Abbey dans le forum Composants VCL
    Réponses: 28
    Dernier message: 10/09/2007, 17h20
  2. Application multi-langues dynamique
    Par pi100 dans le forum Windows Forms
    Réponses: 18
    Dernier message: 29/03/2007, 21h03
  3. Application Multi-langues en C#
    Par ayobo dans le forum Windows Forms
    Réponses: 2
    Dernier message: 27/11/2006, 16h42
  4. Application multi-langue [Delphi 7]
    Par guence dans le forum Delphi
    Réponses: 3
    Dernier message: 05/09/2006, 12h43
  5. Application multi-langue
    Par JerBi dans le forum EDI
    Réponses: 2
    Dernier message: 15/09/2005, 02h22

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