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 :

Comment declarer une variable avec static et WithEvents?


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2011
    Messages : 335
    Par défaut Comment declarer une variable avec static et WithEvents?
    Bonsoir,

    Mon problème est que je fait référence à une instance de chart dejà instancié et donc morte (nothing).

    La solution pour prolongé la durée de vie de mon instance serait de la déclarer avec "static", sauf que je doit impérativement la déclarer avec WithEvents et que ces deux options: "Static" et "WithEvents" sont impossble à réaliser en même temps.

    Comment faire?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim WithEvents YMDChart As Chart

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par Gualino Voir le message
    Bonsoir,

    Mon problème est que je fait référence à une instance de chart dejà instancié et donc morte (nothing).
    Tu ne fournis pas assez d’éléments. Notamment, le "donc" ici laisse perplexe.

    La solution pour prolongé la durée de vie de mon instance serait de la déclarer avec "static", sauf que je doit impérativement la déclarer avec WithEvents et que ces deux options: "Static" et "WithEvents" sont impossble à réaliser en même temps.
    Tiens, c'est curieux. Une curiosité VB.Net ? quelqu'un peut expliquer pourquoi il serait impossible d'associer des handlers d'event à une variable static ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2011
    Messages : 335
    Par défaut
    J'instancie un chart dans une procédure.
    C'est une fois que la procédure est finie et que je fais référence à cette instance précédemment créer que l'instance est nothing...

    Je voulais dire déclarer, mais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Static WithEvents YMDChart As Chart
    Est incorrect.

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    C'est un peu plus clair (mais à peine).

    Qu'est ce qui t'empêche de déclarer cet instance au niveau de la classe où se trouve la procédure ? tant que cette classe n'est pas disposée je ne vois pas bien où est le problème.
    En effet, si tu y fais référence après coup c'est que tu disposes quelque part d'une référence (évidence). Or, tant que tu conserves une référence à l'instance de la classe, elle n'est pas éligible au GC.

    Je ne vois pas trop où est ton soucis.

  5. #5
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2011
    Messages : 335
    Par défaut
    Mon premier soucis est exposer dans ce post:
    http://www.developpez.net/forums/d11...ete-instancie/

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    La magie noire en programmation ça n'existe pas.
    Si tes instances sont à "nothing", c'est que tu as une situation où tu appelles SetYMDToBlack avant d’appeler PlotYMD.

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

Discussions similaires

  1. declarer une variable avec un bon type
    Par awalter1 dans le forum Général Python
    Réponses: 4
    Dernier message: 05/12/2011, 15h34
  2. Réponses: 14
    Dernier message: 23/03/2011, 20h39
  3. Réponses: 2
    Dernier message: 01/12/2008, 14h18
  4. comment declarer une variable de type date ?
    Par MAJIK_ENIS dans le forum JDBC
    Réponses: 1
    Dernier message: 26/05/2006, 00h02
  5. Comment déclarer une variable globale
    Par davkick dans le forum C
    Réponses: 13
    Dernier message: 20/05/2005, 18h50

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