Changer de language dans form1

Résolu
hacker591 Messages postés 34 Date d'inscription mardi 10 juin 2014 Statut Membre Dernière intervention 26 janvier 2022 - 14 sept. 2014 à 13:21
Whismeril Messages postés 19027 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 24 avril 2024 - 14 sept. 2014 à 20:16
Bonjour,

J'aimerai un peu aide pour changer de langue dans mon Form1.
Voici en image de mon projet :


mes codes:
Imports System.Threading

Public Class Form1

    Private Sub FrancaisToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles FrancaisToolStripMenuItem.Click
        Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("fr-FR")
    End Sub

    Private Sub AnglaisToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles AnglaisToolStripMenuItem.Click
        Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("en-US")
    End Sub
End Class


Je vous explique, quand je clique sur anglais. Les mots sont traduit en anglais.
Pouvez-vous me dire comment on fait pour changer de langue de mon projet?

Merci
A voir également:

3 réponses

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
14 sept. 2014 à 15:36
Bonjour,
Je vous explique, quand je clique sur anglais. Les mots sont traduit en anglais.
C'est ce que ça fait.... ou ce que tu VEUX faire ??

Pouvez-vous me dire comment on fait pour changer de langue de mon projet?
Ton projet... tu veux dire l'interface dans ton visual studio ou bien l'affichage dans ton USERFORM ??


NB: le fait de modifier la langue dans ton userform ne traduira pas par magie ce que tu as écrit dans ta USERFORM.....

Il existe un assez bon tuto pour créer une appli multi langue :
http://msdn.microsoft.com/en-AU/library/y99d1cd3%28v=vs.110%29.aspx

Bonne continuation.

0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
14 sept. 2014 à 15:37
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 14/09/2014 à 18:40
Bonjour,

J'ai quant à moi également choisi l'utilisation d'un fichier .res (mais ce pourrait également être un fichier de ressources d'un autre type) et la méthode suivante
1) j'attribue à chaque contrôle à traduire un numéro d'ordre (que je mets dans sa propriété .tag).
2) j'utilise une variable globale (appelons la par exemple Trad), à laquelle j'attribue une valeur 0, 1, 2, 3, etc ...
3) mon fichier de ressources contient :
- pour le français, les étiquettes 1 à 999
- pour la lange suivante les étiquettes 1001 à 1999
- pour la suivante : les étiquettes 2001 à 2999
etc ...
dans la procédure de traduction, que j'appelle tant au chargement qu'au clic sur le choix de la langue:
je parcours mes contrôles, lis leur valeur éventuellement présente en propriété tag et, si présente, je vais lire dans mon fichier de ressources la "traduction" qui figure à l'étiquette : (Trad * 1000) + valeur_du_tag
ainsi, donc : si trad = 0 et que j'ai 3 dans le tag, je lis la correspondance en étiquette 3
Si trad est à 2 et que j'ai 123 dans le tag, je lis la correspondance en étiquette 2123
simple et très efficace

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
Whismeril Messages postés 19027 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 24 avril 2024 656
14 sept. 2014 à 19:32
Tu peux aussi utiliser un fichier xml, l'avantage c'est qu'un traducteur n'aura pas à accéder au code.

Tu fait un truc du style:

<Langues>
      <Langue Id = "fr">Français</Langue
      <Langue Id = "de">Deutch</Langue
      <Langue Id = "en">English</Langue
</Langues>
<FormMain>
       <butAccepter>
                <fr>Accepter</>
                <de>Akzeptieren</>
                <en>Accept</>
       </butAccepter>
.....etc      


En lisant la liste de langue, tu construis le menu déroulant dynamiquement.
Ensuite par formulaire au moment du Load ou du New tu va lire le texte qui va bien pour chaque contrôle.


0
Whismeril Messages postés 19027 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 24 avril 2024 656
14 sept. 2014 à 20:16
ce serait peut être mieux comme ça
<Langues>
      <Langue Id = "fr">Français</Langue>
      <Langue Id = "de">Deutch</Langue>
      <Langue Id = "en">English</Langue>
</Langues>
<FormMain>
       <butAccepter>
                <texte Id ="fr">Accepter</>
                <texte Id ="de">Akzeptieren</>
                <texte Id ="en">Accept</>
       </butAccepter>
.....etc
0
Rejoignez-nous