Changer la langue durant l'execution du logiciel

Résolu
arno15 Messages postés 3 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 29 août 2006 - 24 août 2006 à 11:35
Caribensila Messages postés 2527 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 16 octobre 2019 - 24 août 2006 à 20:13
Bonjour.
J'ai créé un logiciel qui comporte 10 forms. Je crée et je détruit chaque form lorsque j'en besoin. Seule la form principale reste ouverte. L'utilisateur a la possibilité de changer de langue durant l'exécution du programme. Une fois la langue sélectionnée, je charge la DLL correspondante puis l'utilisateur continu son travail. Comme a chaque fois qu'il ouvre une form je la crée, elle prend bien en compte le changement de langue.
LE PROBLEME:
Je n'arrive pas a modifier la langue de la form principale. Si je la détruit pour la reconstruire, l'application plante (violation d'accés.).
Je n'est pas trouvé de méthode permettant de dire a la form de charger la nouvelle DLL.
Je peut toujours fermer l'application puis la relancer tout de suite aprés (comme ca les modification seront prisent en compte par la form principale), mais je préfèrerai éviter.

Si quelqu'un avait une solution ou une idée, je suis preneur.
Merci.

2 réponses

cs_Loda Messages postés 814 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 30 juillet 2009 3
24 août 2006 à 11:59
salut,

bien que cela ne solve pas ton problème, je voulais te conseiller d'utiliser des fichier text (ini, xml) plustot que des dll.

En effet, cela te permet de donner les traduction à faire à des non-programmeur, de permettre aux utilistaeurs finaux de corriger les texts, de ne pas avoir a detruire la form pour changer la langue, ...

cela represente un peu plus de travail, mais je pense que cela en vaut la peine.

Sinon,
Essais-tu de fermer et de recreer la form depuis elle-même? cad dans un event genre button1clik?
cela expliquerais ton problème.

Soit dit en passant, Je pense(espère) qu'il doit y avoir une meilleur façon que de detruire et recreer les forms à chaque fois.

désolé de ne pas pouvoir t'aider plus.

bon code,
3
Caribensila Messages postés 2527 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 16 octobre 2019 18
24 août 2006 à 20:13
Salut,

Une idée (je ne sais pas ce qu'elle vaut, mais bon...) :

Dans ta form principale, une ListBox par exemple,  avec les langues disponibles. Et que ça!

Et quand une langue est sélectionnée, ça lance "ton ancienne form principale" en la reconstruisant.
Bien sûr, l'actuelle form principale est cachée jusqu'à la prochaine demande de changement de langue...
0
Rejoignez-nous