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 de visibilite de variable


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut Probleme de visibilite de variable
    Salut,

    Pour m eclaircir les idees, j aurais trois questions svp

    1) Pour declarrer des variables en globales, y a t il plusieurs moyens ou faut il forcement creer un module et declarrer a l interieur de ce module les variables par le mot cle Public ?

    2) Je ne n arrive po a comprendre la difference entre Public et Public Shared. Si quelqu un pouvait m expliquer en 2 mots svp.

    3) imaginons que dans ma form2 je cre un label Label8. Je ne comprends pas pourquoi le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Form2.Label8.Text = "toto"
    ecrit dans la form1 ne me donne pas d erreur, pour autant quand je regarde la form2 le label ne contient pas le texte "toto" . Pourquoi ?

    Merci

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 291
    Par défaut
    Salut,

    1) Pour declarrer des variables en globales, y a t il plusieurs moyens ou faut il forcement creer un module et declarrer a l interieur de ce module les variables par le mot cle Public ?
    Je crois qu'il n'y a pas d'autres solutions.

    2) Je ne n arrive po a comprendre la difference entre Public et Public Shared. Si quelqu un pouvait m expliquer en 2 mots svp.
    ms-help://MS.VSExpressCC.v80/MS.NETFramework.v20.fr/dv_vbalr/html/2bf7cf2c-b0dd-485e-8749-b5d674dab4cd.htm
    Le partage d'un membre d'une classe ou structure le rend disponible à chaque instance, au lieu d'avoir chaque instance qui conserve sa propre copie. Par exemple, le fait que la valeur d'une variable s'applique à l'application entière est utile. Si vous déclarez la variable comme étant Shared, toutes les instances accéderont au même emplacement de stockage, et si une instance modifie la valeur de la variable, toutes les instances accèdent à la valeur mise à jour.

    3) imaginons que dans ma form2 je cre un label Label8. Je ne comprends pas pourquoi le code
    Code :

    Form2.Label8.Text = "toto"

    ecrit dans la form1 ne me donne pas d erreur, pour autant quand je regarde la form2 le label ne contient pas le texte "toto" . Pourquoi ?
    Parce qu'il faut faire référence à l'instance et non la classe. Regarde du côté owner

    Gwendal

  3. #3
    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 : 51
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    1) bah si justement, il y a un autre moyen, qui plus est non spécifique à VB (alors que les modules n'existent pas ailleurs) :

    Tu crées une classe public ou friend, suivant la portée que tu veux lui donner, et tu lui attribue des champs "shared".
    "shared" est l'équivalent de static dans les autres langages.

  4. #4
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut
    Lol, bah ca m aide po a y voir plus clair tout ca

    1)
    1) bah si justement, il y a un autre moyen, qui plus est non spécifique à VB (alors que les modules n'existent pas ailleurs) :

    Tu crées une classe public ou friend, suivant la portée que tu veux lui donner, et tu lui attribue des champs "shared".
    "shared" est l'équivalent de static dans les autres langages.
    Y a t il une valeur ajoute a faire comme ca ?


    2) J ai tjs pas capte shared et public.
    Est ce que la difference est que Public shared est utilise quand on definit la variable dans une classe est qu elle sera vu en dehors de cette classe, et Public qund on definit cette variable dans un module ? ... je nage un peu la


    3) j ai po compris non plus

  5. #5
    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 : 51
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    Salut Slumpy,

    Je crois qu'il faut que tu te lises un bouquin sur les rudiments de la POO, afin que tu assimiles bien les bases de ce concept, en particulier les notions de classe (la définition de l'objet) et d'instance de classe (l'objet concret).

    Il y a aussi beaucoup de tutos sur ce même site, bien écrits par des gens bien meilleurs pédagogues que moi.

    Donnes-toi franchement la peine de lire ça, ça vaut le coup.

    Bon courage,

    JM

  6. #6
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut
    Yo,

    Je ne suis pas expret en OO c clair, mais j ai deja fait du Java. Je c ce qu est une classe et un objet de cette classe.

    Je crois que mon probleme vient du fait qu en VB, je suis reste scotche a VB6. Je crois que je mixe trop du vb6 et .net

    Par exemple, ok une form est une class now, mais faut il l instancier ?

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

Discussions similaires

  1. [PHP 5.3] Probleme de visibilité de variable globale
    Par ygu406 dans le forum Langage
    Réponses: 3
    Dernier message: 23/01/2012, 12h54
  2. petit problem de transfer de variable entre page
    Par Damarus dans le forum Langage
    Réponses: 8
    Dernier message: 11/09/2005, 12h56
  3. Réponses: 3
    Dernier message: 01/09/2005, 11h56
  4. [web] Probleme de passe de variable qd j utilise un module TK
    Par Slippers dans le forum Interfaces Graphiques
    Réponses: 5
    Dernier message: 19/04/2005, 17h48
  5. [VB.NET] Problem de récupération de variable avec une DLL
    Par ludovic85 dans le forum Windows Forms
    Réponses: 11
    Dernier message: 19/01/2005, 11h37

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