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

 .NET Discussion :

objet(i) avec des boucles for next et for each/next


Sujet :

.NET

  1. #1
    Membre à l'essai
    Homme Profil pro
    Autre sans rapport avec l'informatique
    Inscrit en
    Février 2016
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Autre sans rapport avec l'informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2016
    Messages : 38
    Points : 23
    Points
    23
    Par défaut objet(i) avec des boucles for next et for each/next
    Bonjour a tous

    je vous soumets mon questionnement, ma "torture":
    une form sur laquelle il y a 8 combobox
    ces 8 combobox se remplissent a partir de la meme source de données
    et permettent de recuperer des données a but de calcul (en fonction du selected item de chaque combobox)
    les calculs a faire sont toujours les memes

    Alors, je me suis dis (mais j'ai ptetre tord) que je pourrais ptetre faire tout ça avec une instanciation en boucle for Next pour avoir des combobox indicés, et des objets indicés liés aux combobox, et des boucles for next

    Voici mon 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
    Dim lstTerrains As New List(Of Terrain)
            Dim lstcombox As New List(Of ComboBox)
     
     
            For i = 0 To 7
                Dim Terrain(i) As Terrain
                Terrain(i) = New Terrain
                lstTerrains.Add(Terrain(i))
                Dim cbx(i) As ComboBox
                cbx(i) = New ComboBox
                lstcombox.Add(cbx(i))
                cbx(i).Text = 100 + 10 * 1
            Next i
     
     
            For Each Terrain In lstTerrains
                For Each cbx In lstcombox
     
                    Terrain.Nom = cbx.Text
                    With cbx
                        cbx.Visible = True
                    End With
     
                Next
     
            Next
    Mon soucis?:
    le code a l'air de fonctionner MAIS
    je n'arrive pas a faire afficher mes combobox

    merci d'avance pour votre aide

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2007
    Messages : 871
    Points : 1 498
    Points
    1 498
    Par défaut
    Salut,

    De ce que je vois tu construit une liste de combox, puis dans la seconde partie de ton code tu les rends visibles, mais nulle part tu ajoutes ces combos box a ton form donc elles ne sont jamais affichees.

    il te faut egalement dans le seconde boucle un truc ressemblant a ceci:


    Solution plus simple : si tu as un nombre limite de combos(non dynamique) et il est nettement plus facile de creer une liste de combosbox et d'ajouter celle-ci dedans, puis de faire ton traitement.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Autre sans rapport avec l'informatique
    Inscrit en
    Février 2016
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Autre sans rapport avec l'informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2016
    Messages : 38
    Points : 23
    Points
    23
    Par défaut
    j'ai 8 combox au total qui se remplissent tous avec la mm base de données et les memes données
    c'est effectivement l'instruction qui me manquait. J'avais vu Load combobox mais ct du vb6 et ça ne marche pas avec .net et vs2010!!

    merci j'essaye de suite

  4. #4
    Membre à l'essai
    Homme Profil pro
    Autre sans rapport avec l'informatique
    Inscrit en
    Février 2016
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Autre sans rapport avec l'informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2016
    Messages : 38
    Points : 23
    Points
    23
    Par défaut
    Bon ben merci ça y est, mes combobox s'affichent et se remplissent

    La suite du pbm: comment creer un evenement SelectedIndexChanged dans combobox(i) avec i allant de 1a 8
    je pensais a
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for i = 1 to 8 
    if cbx(i).selectedItemChanged then
    terrain(i)= 1+i
    end if
    mais j'ai de gros gros doutes car l'evenement doit etre detecté avant de lancer la procedure. voila le code

    creation de mes combobox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
      'création des combobox cbx(i)
               for i = 1 to 8
     Dim cbx(i) As ComboBox
                cbx(i) = New ComboBox
                lstcombox.Add(cbx(i))
                cbx(i).SetBounds(x, y - 3, 121, 21)
    Me.Controls.Add(cbx(i))
    Next
    ensuite, je me connecte a la base de données et je rempli chaque combobox cbx(i)
    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
     For Each cbx In lstcombox
                cbx.Items.Clear()
            Next
     
            Try
                MyCommand.Connection = MyConnection
                MyCommand.CommandText = "SELECT * FROM Terrains ORDER BY nom ASC"
     
                MyreaderTerrains = MyCommand.ExecuteReader
     
                Do While MyreaderTerrains.Read
                    For Each cbx In lstcombox
                        cbx.Items.Add(MyreaderTerrains.GetString(1))
                    Next
                Loop
    maintenant je peux selecter un terrain dans une cbx
    ensuite il faudrait que je charge des données en fonction de ce qui est selectionné dans les cbx
    voila ce que j'ai ecrit, mais la c'est quand j'ai 8 combobox independants et non indicés. (exemple pour le comcobox nommé Terrain1_txt)
    Comment faire pour lever l'evenement cbx(i)_selctedIndexChange

    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
    Private Sub Terrain1_txt_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs)
     
            'création de terrain(i) et de la liste des terrains
     
            For i = 1 To 8
                Dim Terrain(i) As Terrain
                Terrain(i) = New Terrain
                lstTerrains.Add(Terrain(i))
     
                ChargerDonnees(Terrain(i), cbx(i).Text)             ' cbx(i).text premet de faire la requete pour la recuperation des données
                AffectationsTerrain(Terrain(i))                           'effectue des calculs en fonction des données recuperees
     
            Next
     
     
        End Sub

    merci de votre aide

  5. #5
    Membre à l'essai
    Homme Profil pro
    Autre sans rapport avec l'informatique
    Inscrit en
    Février 2016
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Autre sans rapport avec l'informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2016
    Messages : 38
    Points : 23
    Points
    23
    Par défaut
    EUREKAAAAA
    La nuit porte conseil
    Bon c'est pas tout a fait ce que je voulais, mais ça marche aussi;
    un BOUTON avec evenement click pour lancer les calculs

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

Discussions similaires

  1. tableau dans un tableau avec des boucle for
    Par Issamoo dans le forum Langage
    Réponses: 2
    Dernier message: 11/04/2014, 09h41
  2. Problème avec des boucles while/for imbriquées
    Par Nico820 dans le forum Général Python
    Réponses: 12
    Dernier message: 14/12/2012, 16h24
  3. [POO] parcourir un objet json avec une boucle for in
    Par bucheron007 dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 19/01/2009, 12h55
  4. Transparence d'un objet 3D avec des matériaux
    Par pavicf dans le forum DirectX
    Réponses: 20
    Dernier message: 16/11/2006, 18h35
  5. Réponses: 27
    Dernier message: 03/02/2003, 12h27

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