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 :

probleme dans une structure / comment avoir une sorte de tableau d'objets


Sujet :

VB.NET

  1. #1
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut probleme dans une structure / comment avoir une sorte de tableau d'objets
    bonjour

    je créé une structure objet avec différentes variables et meme une sub
    le probleme c'est que dans la sub de la structure, je ne peux accéder aux reste de ma classe


    Public elements As New Collection()

    Public Structure element
    _ Public nom_objet As String
    _ Public image As System.Drawing.Bitmap
    _ Friend centre As PointF
    _ _ Public Sub add(parametres...)
    _ _ _ elements.add(...)
    _ _ End Sub
    End Structure



    voilà le code, elements est souligné et me dit "Une référence à un membre non partagé requiert une référence objet"

    meme si dans la sub (dans la structure donc) j'appelle une sub externe à la structure ca me dit ca

    m'enfin moi je voudrais pouvoir passer au travers
    si quelqu'un à une idée de ce que je pourrais faire pour ajouter cet element à ma collection elements ...

    merci
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  2. #2
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    As-tu bien instancié ta structure ?
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

  3. #3
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    c'est une classe objet que je fais
    donc je ne l'execute pas directement

    enfin j'en suis qu'à écrire le code et ca me souligne
    pour moi une structure c'est comme "type" en vb6
    enfin j'ai pas instancié ma structure vu que c'est le code de la structure que j'écris

    je me trompe quelque part ?

    j'ai essayé de remplacer private structure par private class
    meme probleme ...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  4. #4
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Et pourquoi ne pas déclarer elements dans la structure ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Public Structure element
     
        Public elements As New Collection()
        Public nom_objet As String
        Public image As System.Drawing.Bitmap
        Friend centre As PointF
     
        Public Sub add(parametres...)
            elements.add(...)
        End Sub
     
    End Structure
    Ca devrait le faire je pense (pas moyen de tester au bureau)
    Mais ensuite ça dépend de la logique du reste de l'appli.
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

  5. #5
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    bon en fait je dis n'importe quoi
    mon analyse a dérivé un peu

    cette sub n'a rien à faire dans la structure
    désolé pour le dérangement
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  6. #6
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Résolu ou Délestage...

    @+
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

  7. #7
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    en fait le probleme qu'il me reste c'est que je veux que l'utilisateur de la classe ai accès à la collection "elements" qui est composé d'objets "element"
    et qu'en plus il puisse utiliser les propriétés de cette structure

    en vb 6 j'aurais fait dim elements() as element
    element(x).propriété aurait été accessible

    mais là, la collection ne peut pas etre typée
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  8. #8
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    En VB6, tu faisais un tableau, et là une collection.
    Pourquoi changer ?
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

  9. #9
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    parce qu'en vb.net on ne peut pas faire de tableaux d'objets, juste des tableaux de variables ...

    et c'est bien dommage d'ailleurs
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  10. #10
    Membre chevronné
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 179
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 179
    Points : 1 776
    Points
    1 776
    Par défaut
    Bonjour.

    Utilise une sortedList(Of xxxx, yyyy) par exemple.

    Cdt.
    Bon à savoir : la touche F1 ne sert pas à commander des places pour le grand prix de Belgique.

  11. #11
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    oui en effet je retire ce que j'ai dit
    quand je suis passé à .net (il y a peu) j'ai lu plein de tuto "passage de vb6 à .NET" qui disait que les tableaux de variables c'était fini

    je viens d'essayer Public elements As List(Of Element)
    ca à l'air de faire ce que je veux faire (vu qu'on peut accéder aux propriétés d'une "instance")

    ca marche que je fasse une sous classe ou une structure (bien aussi)

    par contre ca exige que ma classe (ou structure) element soit public, ce qui m'embete

    je voudrais que les utilisateurs de la classe ne voit pas cette sous classe ...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  12. #12
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Citation Envoyé par sperot51
    en fait le probleme qu'il me reste c'est que je veux que l'utilisateur de la classe ai accès à la collection "elements" qui est composé d'objets "element"
    et qu'en plus il puisse utiliser les propriétés de cette structure
    Si l'utilisateur doit utiliser cette structure, il faut bien qu'il y ait accès, non ?
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

  13. #13
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    certes lol

    enfin je veux qu'il y ait accès au tableau de variable qui lui est du type de la classe

    m'enfin je vais faire avec, ca doit etre obligé pour que les propriétés soit utilisables en amont ...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 09/05/2013, 20h29
  2. Comment avoir une règle millimétrée sur une form
    Par jougjo dans le forum Visual Studio
    Réponses: 0
    Dernier message: 07/06/2010, 17h38
  3. [AC-2003] Comment avoir une valeur en % grace à une requete
    Par l-dag dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 23/07/2009, 10h52
  4. Réponses: 2
    Dernier message: 05/01/2009, 12h45
  5. copie d'une table Y d'une base A vers une table X d'une base
    Par moneyboss dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 30/08/2005, 21h24

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