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

Windows Forms Discussion :

Appli C# multi-langue


Sujet :

Windows Forms

  1. #21
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    who cares ?

    Honnetement, tu vas traduire toute ton application UNE fois, et apres,
    il n'y aura plus aucun problème...

    Alors, parfois, il est preferable de faire attendre un peu l'utilisateur... mais d'avoir
    un truc sympa à maintenir, et portable en terme de langue

    Et à defaut d'un suspendLayout, tu peux toujours aire un BlockWindowUpdate
    (ou quelque chose comme cela)... le temps de mettre à jour des données

    The Monz, Toulouse
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  2. #22
    Membre régulier
    Inscrit en
    Mars 2002
    Messages
    118
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 118
    Points : 70
    Points
    70
    Par défaut
    Who cares ? Le client !

    Je vais continuer d'investiguer ce probleme... Mais bon, la base est la !

  3. #23
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    rien ne t'empeche d'avoir une jolie splash Screen pendant que ton code
    traduit toutes les pages

    Ya quand meme bcp de "gros" logiciel qui t'inflige une splash Screen au démarrage... à ton avis, c'est pas juste pour ton montrer le joli logo de la boite,
    c'est aussi pour te faire patienter pendant que pleins d'opérations pas jolies
    visuellement sont mise en place

    et puis, tu peux tres bien faire la mise à jour de fenetre sans que pour autant elles soient visibles

    JE comprends que tu ne veux pas indisposer ton client, mais tu as quand meme
    "beaucoup" de solution pour lui eviter ce "petit" désagrément au démarrage

    The Monz, Toulouse
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  4. #24
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 92
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 41
    Points : 31
    Points
    31
    Par défaut
    Salut
    J'ai commencé à utiliser ton module Traduction qui correspond assez bien à ce que je veux faire et que j'arrive à comprendre.
    Je suis tombé sur un bug ou disons une déficience: s'il y a une barre de séparation dans un menu, le programme se plante avec "Invalid Cast Exception. Dans le code qui suit, le foreach attend un ToolStripMenuItem et il récupère un ToolStripSeparator.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
      private static void TranslateItem(ToolStripMenuItem item)
            {
                item.Text = GetTranslation(item.Name);
                foreach (ToolStripItem i in item.DropDownItems)
                {
                    TranslateItem(i);
                }
            }
    Je ne vois pas comment faire pour distinguer les MenuItems des MenuSeparators. J'ai une solution qui vaut ce qu'elle vaut: je détecte les Separators par le fait qu'ils ont un texte à "" et je les néglige.Ca marche mais il y a sans doute plus élégant.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
      private static void TranslateItem(ToolStripMenuItem item)
            {
                item.Text = GetTranslation(item.Name);
                for (int k = 0; k < item.DropDownItems.Count;k++ )
                {
                    if (item.DropDownItems[k].Text == "")
                        continue;
                    ToolStripMenuItem i =(ToolStripMenuItem)item.DropDownItems[k];
                    TranslateItem(i);
                }
            }
    A+

  5. #25
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    salut

    tu dois pouvoir faire un truc du genre :

    if a is ToolStripItemSeparator

    ou un truc du genre ?

    The Monz, Toulouse
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  6. #26
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 92
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 41
    Points : 31
    Points
    31
    Par défaut
    Citation Envoyé par theMonz31 Voir le message
    ...
    tu dois pouvoir faire un truc du genre : if a is ToolStripItemSeparator
    ou un truc du genre ?
    Oui. Voila ce à quoi je suis arrivé et qui marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
      private static void TranslateItem(ToolStripMenuItem item)
            {
                item.Text = GetTranslation(item.Name);
                foreach (object i in item.DropDownItems)
                {
                    if (i is ToolStripMenuItem)
                        TranslateItem((ToolStripMenuItem) i);
                }
            }
    C'est dommage que le foreach ne soit pas un peu plus évolué et ne fournisse que les éléments du type demandé. Apparemment il les prends comme ils arrivent et après il dit "erreur ! ce que je viens de vous donner ne correspond pas à ce que vous m'avez demandé...".

    A+

  7. #27
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    ok
    super

    tu te debrouilles bien pour quelqu'un de 79 ans

    The Monz, Toulouse
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  8. #28
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 92
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 41
    Points : 31
    Points
    31
    Par défaut
    Ca doit être l'air de la mer qui me maintient en forme. Mais tu me vieillis. je n'ai que 75 ans.

Discussions similaires

  1. Appli Multi langue
    Par Piercing dans le forum EDI/Outils
    Réponses: 9
    Dernier message: 13/07/2011, 10h48
  2. [iOS 4.x] Appli Multi langue
    Par Feanorin dans le forum Objective-C
    Réponses: 1
    Dernier message: 07/01/2011, 11h49
  3. Appli MFC multi langue
    Par youda dans le forum MFC
    Réponses: 5
    Dernier message: 04/02/2008, 11h38
  4. [CR][.NET] Rapport multi-langue
    Par Harakor dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 16/02/2005, 17h06
  5. [C#] Multi langue - fichier resource.resx
    Par dacamp dans le forum ASP.NET
    Réponses: 5
    Dernier message: 03/06/2004, 16h25

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