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

VB.NET Discussion :

Passer d'un menu à l'autre


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2011
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 60
    Par défaut Passer d'un menu à l'autre
    Bonjour , voici mon problème.
    J'ai des dictionnaires qui initialisent l'affichage dont voici un exemple:
    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
     
    'déclaration des menu
    Public MenuConnexion As New Dictionary(Of String, String)
    Public MenuMain As New Dictionary(Of String, String)
     
    'initialisation 
        Sub initMenuConnexion()
            MenuConnexion.Add("0", "")
            MenuConnexion.Add("1", "Hors connexion")
        End Sub
     
     
        Sub initMenuMain()
            MenuMain.Add("0", "Supervision")
            MenuMain.Add("1", "Defauts")
            MenuMain.Add("2", "Essais")
    le soucis est le suivant:
    je rempli ma listBox avec mes dictionnaire:
    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
    Dim N As Integer
     
            N = ListBox1.SelectedIndex
     
            Select Case N
     
                Case 0
                    ListBox1.Items.Clear()
                    For Each kvp As KeyValuePair(Of String, String) In Affichage.MenuSupervision
                        ListBox1.Items.Add(kvp.Value)
                    Next kvp
                Case 1
                     ...
                case 2 
                     ...
    end select
    j'aimerai pouvoir passer d'un dictionnaire à l'autre.
    par exemple quand je suis sur le menu "connexion" et que je suis qur Hors connexion et que je clique sur OK , sa m'affiche le menu "Main".
    jusqu'ici sa marche mais je n'arrive pas a faire le bouton qui me permet de passer du menu "main" au menu "connexion" (en gros une sorte de bouton précédent)

    merci

  2. #2
    Membre émérite
    Avatar de Gurdil le nain
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 468
    Par défaut
    Salut,

    Essayes de créer un BindingSource qui sera facilement modifiable.

    Exemple :

    Initialisation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Dim dataBind As New BindingSource
     
    dataBind.DataSource = tonDictionnaire.Values
    taListeBox.DataSource = dataBind
    Mise à jour :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    dataBind.DataSource = tonNouveauDictionnaire.Values
    dataBind.ResetBindings(False)
    Edit : En fait je suis pas sur d'avoir répondu à ta question., mais ce sera déjà plus propre que de boucler dans chaque Case...

  3. #3
    Membre averti
    Inscrit en
    Février 2011
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 60
    Par défaut
    je te remercie meme si en effet tu ne répond pas tellement à ma question.

    Le soucis c'est que je ne vois pas comment faire sans les CASE car une fois que j'ai dépassé le menu "connexion" j'ai un menu "main", qui lui, affiche plusieurs menu, etc etc

    voila j'ai modifié le code en ajoutant tes conseils et en effet c'est plus pratique et moins lourd.

    reste le soucis du boutton précédent
    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
    27
     
        Private Sub ok_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ok.Click
     
            Dim N As Integer
     
            N = ListBox1.SelectedIndex
     
            Select Case N
     
                Case 0
                    dataBind.DataSource = Affichage.Menu1.Values
                    dataBind.ResetBindings(False)
                Case 1
                    dataBind.DataSource = Affichage.Menu2.Values
                    dataBind.ResetBindings(False)
                Case 2
                    dataBind.DataSource = Affichage.Menu3.Values
                    dataBind.ResetBindings(False)
                Case 3
                    dataBind.DataSource = Affichage.Menu4.Values
                    dataBind.ResetBindings(False)
                Case 4
                    dataBind.DataSource = Affichage.Menu5Values
                    dataBind.ResetBindings(False)
            End Select
     
        End Sub

  4. #4
    Membre émérite
    Avatar de Gurdil le nain
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 468
    Par défaut
    Pourquoi tu parles de menu alors que tu as des listbox ?

    Il faudrait en dire plus sur ton développement, ou nous montrer des captures, des bouts de codes...parce que là, je vois pas vraiment ce que tu veux faire !!

  5. #5
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Par défaut
    Je pense en effet que ton problème n'est pas très complexe mais il faut que tu sois plus précis dans ta demande car il est difficile avec les éléments que tu donnes de savoir d'où tu pars et où tu veux aller.
    Donne nous les informations demandées par Gurdil le nain et tu auras probablement plus de réponses.

  6. #6
    Membre averti
    Inscrit en
    Février 2011
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 60
    Par défaut
    je vais faire une video se sera plus simple

  7. #7
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Par défaut
    Ah carrément
    Une vidéo n'est peut-être pas nécessaire, mais explicite par exemple
    par exemple quand je suis sur le menu "connexion" et que je suis qur Hors connexion et que je clique sur OK , sa m'affiche le menu "Main".
    Cette phrase ne peut être comprise que de quelqu'un qui connaît le contexte, ce qui n'est pas notre cas.

  8. #8
    Membre averti
    Inscrit en
    Février 2011
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 60
    Par défaut
    Voila deux screen

    Je navigue dans mon menu avec les touche H (Haut) et B (Bas) puis je rentre dans le menu "supervision" en cliquant sur OK.

    Mais le soucis c'est que je n'arrive pas à revenir dans le menu précédent en cliquant sur retour.

    Au lancement de l'application je charge le menu MAIN (dictionnaire) et j'affiche ce qu'il contient.
    puis selon l’élément sélectionné (ici supervision) j'affiche les valeur du dictionnaire qui lui correspond (la deuxième image montre les élément du dictionnaire contenu dans supervision)

    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
     
     
    'déclaration des dictionnaires 
     Public MenuMain As New Dictionary(Of String, String)
        Public MenuSupervision As New Dictionary(Of String, String)
        Public MenuDefauts As New Dictionary(Of String, String)
        Public MenuEssais As New Dictionary(Of String, String)
     
    'exemple d’initialisation
    Sub initMenuMain()
            MenuMain.Add("0", "Supervision")
            MenuMain.Add("1", "Defauts")
            MenuMain.Add("2", "Essais")
            MenuMain.Add("3", "Reglages")
            MenuMain.Add("4", "Installation")
            MenuMain.Add("5", "Statistiques")
            MenuMain.Add("6", "Mobee")
        End Sub
     
        Sub initMenuSupervision()
            MenuSupervision.Add("0", "Info ascenseur")
            MenuSupervision.Add("1", "Info variateur")
            MenuSupervision.Add("2", "E/S carte mere")
            MenuSupervision.Add("3", "E/S carte toit cab.")
        End Sub
    en gros je charge le dictionnaire "initMenuMain"
    si l'element 0 (supervision) est selectionné j'affiche dans ma listBox le dictionnaire "initMenuSupervision"
    mais ce que je veux c'est pourvoir revenir au menu précédent

    J’espère avoir été un peu plus clair...
    Images attachées Images attachées   

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA]Excel Passer d'un classeur à un autre
    Par Angel79 dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 26/01/2006, 16h43
  2. passer des données a une autre page php
    Par questionneuse dans le forum Langage
    Réponses: 10
    Dernier message: 25/01/2006, 00h56
  3. Je veux passer d'un enregistrement à l'autre
    Par GuyLafleur dans le forum VB 6 et antérieur
    Réponses: 20
    Dernier message: 15/01/2006, 10h49
  4. Passer d'un champ à l'autre avec TAB
    Par Sharingan dans le forum MFC
    Réponses: 4
    Dernier message: 11/10/2005, 13h52
  5. [Struts]passer d'une action à l'autre en struts
    Par clement42 dans le forum Struts 1
    Réponses: 1
    Dernier message: 16/08/2005, 07h08

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