Changer de language dans form1 [Résolu]

Messages postés
31
Date d'inscription
mardi 10 juin 2014
Dernière intervention
14 août 2017
- 14 sept. 2014 à 13:21 - Dernière réponse :
Messages postés
12267
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 novembre 2018
- 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
Afficher la suite 

Votre réponse

5 réponses

Messages postés
23294
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
19 novembre 2018
- 14 sept. 2014 à 15:36
0
Merci
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.

Messages postés
23294
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
19 novembre 2018
- 14 sept. 2014 à 15:37
Commenter la réponse de jordane45
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
- Modifié par ucfoutu le 14/09/2014 à 18:40
0
Merci
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
Commenter la réponse de ucfoutu
Messages postés
12267
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 novembre 2018
- 14 sept. 2014 à 19:32
0
Merci
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.


Messages postés
12267
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 novembre 2018
- 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
Commenter la réponse de Whismeril

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.