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 :

Déclarer une variable public dans un Sub


Sujet :

VB.NET

  1. #1
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2013
    Messages
    263
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 263
    Points : 148
    Points
    148
    Par défaut Déclarer une variable public dans un Sub
    Bonjour,

    Je suis actuellement entrain de réaliser une procédure qui me permet d'aller récupéré dans une BDD une variable qui me permet de savoir le nombre d'alarme que j'ai sur un système, ensuite avec le nombre d'alarme i, j'essaye de déclarer i alarme grâce à ma class Alarm mais le souci est qu'avant je les déclarer manuellement dans un module mais j'ai plus le droit, bon c'est un peu compliqué alors je voudrai bien pouvoir déclarer a nouveau mes i alarmes sachant que ma class Alarm ce trouve dans mon module et qu'ensuite mes objets alarmes doivent être disponible sur deux Forms.

    Merci d'avance pour vos solutions.

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    Bonjour,

    Tu crés un dictionnaire de tes alarmes, et tu passe ce dictionnaire à une propriété de ta form.


    La classe pour une alarme
    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
    Public Class UneAlarme
     
      Private mNom As String
      Public Property Nom() As String
        Get
          Return mNom
        End Get
        Set(ByVal value As String)
          mNom = value
        End Set
      End Property
     
      Private mNiveauDePriorité As Integer
      Public Property NiveauDePriorité() As Integer
        Get
          Return mNiveauDePriorité
        End Get
        Set(ByVal value As Integer)
          mNiveauDePriorité = value
        End Set
     
      End Property
     
    End Class
    La fenêtre des alarmes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Class frmAlarmes
     
      Private mMesAlarmes As Dictionary(Of String, UneAlarme)
      Public Property MesAlarmes() As Dictionary(Of String, UneAlarme)
        Get
          Return mMesAlarmes
        End Get
        Set(ByVal value As Dictionary(Of String, UneAlarme))
          mMesAlarmes = value
        End Set
      End Property
     
    End Class

    La classe visible de l'extérieur
    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
    ''' <summary>La classe alarme visible.</summary>
    Public Class Alarme
      Implements IAlarmes ' contrat entre classe et interface.
     
      ' définition (et création) pour disponibilité à toute la classe
      Dim fenAlarmes As frmAlarmes = New frmAlarmes ' la fenêtre de gestion des alarmes.
      Dim dicoAlarmes As Dictionary(Of String, UneAlarme) = New Dictionary(Of String, UneAlarme)
    '...
      Sub AjoutAlarme()
        ' ajout des alarmes dans le dictionnaire
        '...
      End Sub
     
      ''' <summary>La procédure de lancement de la gestion des alarmes.</summary>
      ''' <remarks>Aucune action sur les propriétés.</remarks>
      Public Sub GestAlarme() _
      Implements IAlarmes.GestAlarme
        ' implémentation de la procédure définie dans l'interface.
        fenAlarmes.Label1.Text = mParam
        fenAlarmes.Label2.Text = mNom
        fenAlarmes.MesAlarmes = dicoAlarmes
        fenAlarmes.ShowDialog()
      End Sub
     
      '...
    A+, Hervé.

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    Exemple pour l'ajout des alarmes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
      ''' <summary>Ajoute une alarme dans le dictionnaire des alarmes.</summary>
      ''' <param name="UnNom">Nom de l'alarme.</param>
      ''' <param name="UnNiveauDePriorite">Niveau de priorité.</param>
      ''' <remarks>Les alarmes sont identifiées par leur noms.</remarks>
      Public Sub AjoutAlarme(ByVal UnNom As String, ByVal UnNiveauDePriorite As Integer) _
      Implements IAlarmes.AjoutAlarme
        Dim NouvelleAlarme As UneAlarme = New UneAlarme
        NouvelleAlarme.Nom = UnNom
        NouvelleAlarme.NiveauDePriorité = UnNiveauDePriorite
        dicoAlarmes.Add(NouvelleAlarme.Nom, NouvelleAlarme)    ' ou  autre éciture équivalente : dicoAlarmes.Add(Nom, NouvelleAlarme)
        ' Note : en sortie de sub la variable NouvelleAlarme n'existe plus, cela n'est pas génant l'objet alarme créé est référencé par le dictionnaire.
      End Sub
    Ne pas oublier de définir la sub dans l'interface pour vb6. (c'est probablement de la que tu alimenteras ton dictionnaire.

  4. #4
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2013
    Messages
    263
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 263
    Points : 148
    Points
    148
    Par défaut
    Merci bcp !!

Discussions similaires

  1. [Débutant] Acceder à une variable déclarée dans un Sub
    Par loicb38 dans le forum VB.NET
    Réponses: 2
    Dernier message: 26/05/2015, 09h11
  2. [AC-2010] Utiliser une variable public dans une macro
    Par ptitga dans le forum Contribuez
    Réponses: 2
    Dernier message: 28/03/2014, 11h37
  3. Déclarer une variable public pour agrandir sa portée au projet
    Par bilou_12 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/04/2012, 19h49
  4. Rendre une variable public dans mon main
    Par djorfe dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 13/06/2008, 10h49
  5. Réponses: 1
    Dernier message: 27/02/2007, 11h28

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