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

Qt Discussion :

Utilisation de Qt Translator


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 108
    Par défaut Utilisation de Qt Translator
    Bonjour,
    je veux utiliser la classe QTranslator dans mon application.
    Avant de me lancer sur ce coup, je veux m'informer sur un détail.
    Je vais créé les fichier .ts et puis les translater par Qt Linguist, reste à inclure les fichiers .ts dans mon code.
    Selon les tuto, pour utiliser QTranslator, j'ai trouvé cet exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    int main(int argc, char* argv[])
    {
        QApplication app(argc, argv);
     
        QTranslator translator;
        translator.load("myclass_en");
        app.installTranslator(&translator);
     
        FenPrincipale fenetre;
        fenetre.show();
     
        return app.exec();
    }
    Sauf que je veux créer des slots afin de changer la langue lorsque l'utilisateur clique sur le bouton de langue respective .

    voici le code du slot:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    void changeToEng()
    {
       translator.load("myclass_en");
      //app.installTranslator(&translator);
    }
    app.installTranslator(&translator); comment faire pour changer ceci??, installTranslator(&translator); fonctionne??

  2. #2
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    26 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2008
    Messages : 26 772
    Par défaut
    Salut,

    Il faut recréer un QTranslator avec la nouvelle langue, puis charger le bon fichier dedans, le réinstaller, puis retraduire toute la GUI.

    Pour plus de détails, cette session d'Ikipou : http://qt.developpez.tv/2009-devdays...pplications-qt (c'est discuté dedans, avec plein d'autres choses, mais vers la fin, Going Further).
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 108
    Par défaut
    Citation Envoyé par dourouc05 Voir le message
    Salut,

    Il faut recréer un QTranslator avec la nouvelle langue, puis charger le bon fichier dedans, le réinstaller, puis retraduire toute la GUI.

    Pour plus de détails, cette session d'Ikipou : http://qt.developpez.tv/2009-devdays...pplications-qt (c'est discuté dedans, avec plein d'autres choses, mais vers la fin, Going Further).
    Merci pour votre réponse,
    l'exemple montré à la 52ème minute est différent de ce que je cherche!
    je cherche toujours la solution

    J'ai déclarer la viariable app comme étant global,
    mais lorsque je change la langue, le fichier .qm n'est pas chargé... :/

  4. #4
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Par défaut
    Je ne sais pas si ça peut t'aider et si tu avais lu, mais dourouc05 a traduit un Qt Quaterly sur ce sujet : http://qt-quarterly.developpez.com/q...-chef-suedois/

    Il y a également un Qt Quarterly plus récent : http://qt-quarterly.developpez.com/q...ion-dynamique/

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 108
    Par défaut
    Bonjour,
    J'ai pas encore résolu le problème!
    j'ai tenté cette méthode:
    j'ai déclaré une variable globale dans ma classe, voici le code:
    class.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ...
    public:
        static QApplication* application;
    class.cpp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    QApplication* class::application;
    ...
    void class::changeToFr()
    {
        translator.load("class_fr");
        application->installTranslator(&translator);
    }
    main.cpp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    int main(int argc, char *argv[])
    {
        Q_INIT_RESOURCE(ressources);
        QApplication app(argc, argv);
        class classApp;
        classApp.application= &app;
        classApp.showMaximized();
        return app.exec();
    }
    sauf que rien ne se passe lorsque je lance le slot "changeToFr()"!

  6. #6
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    26 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2008
    Messages : 26 772
    Par défaut
    Tu as juste chargé la traduction, maintenant il faut retraduire toute la fenêtre, voir dans la vidéo c'est expliqué.
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

Discussions similaires

  1. [VxiR2] Problème export vers WebI, utilisation de translate/replace
    Par clementp dans le forum Deski
    Réponses: 1
    Dernier message: 26/11/2010, 16h57
  2. Utiliser Google Translate
    Par rambc dans le forum Général Python
    Réponses: 0
    Dernier message: 11/10/2010, 23h56
  3. Réponses: 1
    Dernier message: 01/07/2009, 17h41
  4. Utilisation de translate (?)
    Par LEK dans le forum SQL
    Réponses: 6
    Dernier message: 17/04/2007, 15h04
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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