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 :

MenuStrip probleme MAJ langue


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 362
    Par défaut MenuStrip probleme MAJ langue
    Bonjour,

    J'ai dans mon appli un MenuStrip1 qui est composé de plusieurs éléments:
    - PréférencesToolStripMenuItem
    - LanguesToolStripMenuItem
    - ImpressionToolStripMenuItem
    - AideToolStripMenuItem

    Jusque là pas de probleme. Seulement je souhaite faire une appli multilangues... pour cela j'utilise des fichier .lng et a la lecture de la form je pioche les bonnes valeurs pour chacun des controles de la form.
    Cela fonctionne très bien avec les Button, Listbox, RadioButton ect mais je n'y arrive pas avec le MenuStrip.
    En effet quand je scan tous les controles de ma form, je trouve mon MenuStrip1 mais pas moyen d'acceder aux éléments le constituant...

    Comment dois je faire avec ce type de controle?

    merci

  2. #2
    AP
    AP est déconnecté
    Membre chevronné
    Avatar de AP
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2002
    Messages : 480
    Par défaut
    Normal les menuitem (et tout ce qui hérite de ToolStripItem) n'héritent pas de control (et donc n'apparaissent pas dans la collection de control)
    Tu as alors 2 possibilités:
    - Te servir des fonctionnalités de .NET pour la localisation
    - Quand tu tombes sur un toolstripitem, parcourir les collections Items et DropDownItems et réaliser le même traitement.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 362
    Par défaut
    re,

    merci pour ces informations... en effet quand je parcours les controles de la feuille je tombe sur mon Menustrip1 mais pas sur les elements le constituant...

    A tu un petit exemple a me donner pour parcourir tous les elements de mon MenuStrip car pour etre franc je debute en VB.net et je galere un peut avec ces histoire de menu...

    merci

  4. #4
    AP
    AP est déconnecté
    Membre chevronné
    Avatar de AP
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2002
    Messages : 480
    Par défaut
    Quand tu as ton menustrip:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For Each oMeniItem as toolstripmenitem in MonMenuStrip.Items
    // le code qui va bien
    Next

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 362
    Par défaut
    Re,

    J'ai des soucis avec ton exemple. Sur ma form je n'ai qu'un Menustrip (Menustrip1).
    Pour changer la langue des differents controles de la forme j'utilise ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    Public Function ChargeLng(ByVal Feuille As Form, ByVal Strpath As String)
            Dim controle As System.Windows.Forms.Control
     
            Feuille.Text = lectureINI(Feuille.Name, Feuille.Name, Strpath)
            For Each controle In Feuille.Controls
                Select Case TypeName(controle)
                    Case "TextBox"
                        controle.Text = lectureINI(Feuille.Name, controle.Name, Strpath)
                    Case "Button"
                        controle.Text = lectureINI(Feuille.Name, controle.Name, Strpath)
     
                    Case "ListBox"
                        controle.Text = lectureINI(Feuille.Name, controle.Name, Strpath)
     
                    Case "RadioButton"
                        controle.Text = lectureINI(Feuille.Name, controle.Name, Strpath)
     
                    Case "MenuStrip"
                        Dim menustrip1 As MenuStrip
                        For Each oitem As ToolStripMenuItem In menustrip1.Items
                            oitem.Text = lectureINI(Feuille.Name, oitem.Name, Strpath)
                        Next
                    End Select
            Next
        End Function
    Ca marche très bien pour les differents controles sauf pour mon Menustrip1 ou j'obtient un message d'erreur....NullReferenceException

    D'ou vien le soucis?

Discussions similaires

  1. [POO] Problème de langue avec la classe phpmailer
    Par sansouna24 dans le forum Langage
    Réponses: 10
    Dernier message: 05/01/2012, 16h14
  2. probleme de langue
    Par julo05 dans le forum Windows Vista
    Réponses: 1
    Dernier message: 26/04/2007, 15h14
  3. exporter bd (probleme de langue)
    Par nsanabi dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 29/03/2006, 17h46
  4. [VB6]probleme de langue avec word
    Par nsanabi dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 12/03/2006, 17h46
  5. Probleme de langue.
    Par zerrokooll dans le forum Ordinateurs
    Réponses: 4
    Dernier message: 22/02/2006, 12h52

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