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 stocker les valeurs de variables


Sujet :

VB.NET

  1. #1
    Membre du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut Comment stocker les valeurs de variables
    Bonjour. Il y a deux choses que j'aimerais savoir.
    1] J'aimerai pouvoir créer un moyen de stocker des informations (valeur de variables) pour m'éviter de retaper le code à chaque fois. J'ai essayé dans une fonction mais je ne sais pas comment récupérer des informations dans une fonction et non donner les informations à la fonction. Voici mon code, vous allez comprendre par vous même:

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    Public Function stats(ByRef att As Integer, ByRef def As Integer, ByRef pv As Integer)
            'Définition de la vie actuelle.
            Dim reader As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\pv.txt")
            Dim vie = reader.ReadLine
            pv = vie
            reader.Close()
            'Définition des points d'attaque
            Dim effetattaquetete As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquetete.txt")
            Dim effetattaquet = effetattaquetete.ReadToEnd
            effetattaquetete.Close()
            Dim effetattaquecape As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquecape.txt")
            Dim effetcape = effetattaquecape.ReadToEnd
            effetattaquecape.Close()
            Dim effetattaquecuirasse As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquecuirasse.txt")
            Dim effetattaquec = effetattaquecuirasse.ReadToEnd
            effetattaquecuirasse.Close()
            Dim effetattaquearme As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquearme.txt")
            Dim effetattaquea = effetattaquearme.ReadToEnd
            effetattaquearme.Close()
            Dim dommage As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\attaque.txt")
            Dim attaque = dommage.ReadToEnd
            att = CDbl(attaque) + CDbl(effetattaquet) + CDbl(effetcape) + CDbl(effetattaquec) + CDbl(effetattaquea)
            dommage.Close()
            'Définition des points de défense.
            Dim effetdefensetete As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensetete.txt")
            Dim effetdefenset = effetdefensetete.ReadToEnd
            effetdefensetete.Close()
            Dim effetdefensecape As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensecape.txt")
            Dim effetdcape = effetdefensecape.ReadToEnd
            effetdefensecape.Close()
            Dim effetdefensecuirasse As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensecuirasse.txt")
            Dim effetdefensec = effetdefensecuirasse.ReadToEnd
            effetdefensecuirasse.Close()
            Dim effetdefensearme As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensearme.txt")
            Dim effetdefensea = effetdefensearme.ReadToEnd
            effetdefensearme.Close()
            Dim defense As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\defense.txt")
            Dim pd = defense.ReadToEnd
            def = CDbl(pd) + CDbl(effetdefenset) + CDbl(effetdcape) + CDbl(effetdefensec) + CDbl(effetdefensea)
            defense.Close()
    Comme vous pouvez le voir, je définis dans la fonction la valeur de :
    -att
    -def
    -pv
    Mais comment récupérer leur valeur et non la donner lorsqu'on fait appelle à la fonction?



    2] Sinon, est-il possible de stocker cette fonction (et d'autres) dans une application extérieur et ainsi faire en sorte qu'on puisse faire appelle à cette "bibliothèque de fonction" depuis une autre application?


    Merci d'avance.
    Cordialement.

  2. #2
    Membre confirmé Avatar de hugoclo
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    615
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 615
    Points : 480
    Points
    480
    Par défaut
    Salut moi je ferais comme ca
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    Public Function stats()
    dim rep as string
          dim att  as integer
    dim def as integer
    dim pv as integer
      'Définition de la vie actuelle.
            Dim reader As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\pv.txt")
            Dim vie = reader.ReadLine
            pv = vie
            reader.Close()
            'Définition des points d'attaque
            Dim effetattaquetete As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquetete.txt")
            Dim effetattaquet = effetattaquetete.ReadToEnd
            effetattaquetete.Close()
            Dim effetattaquecape As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquecape.txt")
            Dim effetcape = effetattaquecape.ReadToEnd
            effetattaquecape.Close()
            Dim effetattaquecuirasse As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquecuirasse.txt")
            Dim effetattaquec = effetattaquecuirasse.ReadToEnd
            effetattaquecuirasse.Close()
            Dim effetattaquearme As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquearme.txt")
            Dim effetattaquea = effetattaquearme.ReadToEnd
            effetattaquearme.Close()
            Dim dommage As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\attaque.txt")
            Dim attaque = dommage.ReadToEnd
            att = CDbl(attaque) + CDbl(effetattaquet) + CDbl(effetcape) + CDbl(effetattaquec) + CDbl(effetattaquea)
            dommage.Close()
            'Définition des points de défense.
            Dim effetdefensetete As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensetete.txt")
            Dim effetdefenset = effetdefensetete.ReadToEnd
            effetdefensetete.Close()
            Dim effetdefensecape As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensecape.txt")
            Dim effetdcape = effetdefensecape.ReadToEnd
            effetdefensecape.Close()
            Dim effetdefensecuirasse As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensecuirasse.txt")
            Dim effetdefensec = effetdefensecuirasse.ReadToEnd
            effetdefensecuirasse.Close()
            Dim effetdefensearme As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensearme.txt")
            Dim effetdefensea = effetdefensearme.ReadToEnd
            effetdefensearme.Close()
            Dim defense As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\defense.txt")
            Dim pd = defense.ReadToEnd
            def = CDbl(pd) + CDbl(effetdefenset) + CDbl(effetdcape) + CDbl(effetdefensec) + CDbl(effetdefensea)
            defense.Close()
    rep = att & ";" & def & ";" pv
     
    return rep
    end fonction
     
    Dim mes_stats as string
    dim attaque as integer
    dim poivie as integer
    dim defense as integer
    mes_stats = stats
    attaque = cint(split(mes_stats,";")(0))
    poivie = cint(split(mes_stats,";")(2))
    defense = cint(split(mes_stats,";")(1))
    Lorsque le sage montre la lune du doigt l'idiot regarde le doigt.

  3. #3
    Membre du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut
    Merci beaucoup mais à quoi sert la dernière partie de ton code?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    attaque = cint(split(mes_stats,";")(0))
    poivie = cint(split(mes_stats,";")(2))
    defense = cint(split(mes_stats,";")(1))

  4. #4
    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,

    Les paramètres étant en "ByRef" les modifications apportées dans le code de la fonction seront transmises vers le code principal.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
            Dim Attaque As Integer
            Dim Defense As Integer
            Dim PointVie As Integer
            stats(Attaque, Defense, PointVie) 
            MsgBox(Attaque)
            MsgBox(Defense)
            MsgBox(PointVie)
    Par contre il est préférable de typer les functions (sinon utiliser une sub)
    par exemple pour savoir s'il y a eu une erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        Public Function stats(ByRef att As Integer, ByRef def As Integer, ByRef pv As Integer) As Integer
            Try
                'ton code
                ' ...
                Return 0
            Catch ex As Exception
                Return 1
            End Try
        End Function
    tu peux ensuite l'utiliser ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
            Dim Attaque As Integer
            Dim Defense As Integer
            Dim PointVie As Integer
            If stats(Attaque, Defense, PointVie) = 0 Then
                MsgBox(Attaque)
                MsgBox(Defense)
                MsgBox(PointVie)
            Else
                ' gérer erreur
            End If
    A+, Hervé.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  5. #5
    Membre du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut
    Mais comment l'application va connaître la valeur des variables contenues dans la fonction?
    Sinon pour ma deuxième question, auriez-vous une solution?

  6. #6
    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
    Dans mon exemple la variable attaque contiendra la valeur de att
    la variable defense contiendra la valeur de def
    et la variable PointVie contiendra la valeur de pv

    attaque et att sont en réalité la même zone en mémoire. (parceque tu as définie att en ByRef)
    idem pour les autres.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  7. #7
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Salut

    d'abord met ton projet à option explicit on et option strict on

    Pourquoi ne pas déclarer att def pv comme attribut dans ta class
    au lieu de parametre dans ta fonction

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    class form1
       private att as double
       private def as  double
       private pv as double
    'plutot une sub 
    Public sub  stats() 
    Dim reader As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\pv.txt")
        Dim vie = reader.ReadLine
            pv = convert.todouble(vie)
        reader.Close()
            'Définition des points d'attaque
            reader = New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquetete.txt")
            Dim effetattaquet = reader.ReadToEnd
            reader.Close()
           reader = new System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquecape.txt")
            Dim effetcape = reader.ReadToEnd
            reader.Close()
           reader =  New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquecuirasse.txt")
            Dim effetattaquec = reader.ReadToEnd
           reader.Close()
           reader =  New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\attaquearme.txt")
            Dim effetattaquea = reader.ReadToEnd
            reader.Close()
            reader = New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\attaque.txt")
            Dim attaque = reader.ReadToEnd
            att = Convert.ToDouble(attaque) + Convert.ToDouble(effetattaquet) + Convert.ToDouble(effetcape) + Convert.ToDouble(effetattaquec) + Convert.ToDouble(effetattaquea)       
     reader.Close()
            'Définition des points de défense.
            Dim reader As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensetete.txt")
            Dim effetdefenset = reader.ReadToEnd
           reader.Close()
            reader =   New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensecape.txt")
            Dim effetdcape = reader.ReadToEnd
            reader.Close()
             reader = New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensecuirasse.txt")
            Dim effetdefensec =   reader = .ReadToEnd
            reader = .Close()
              reader = New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\effet\defensearme.txt")
            Dim effetdefensea =   reader = .ReadToEnd
             reader = .Close()
             reader =  New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\defense.txt")
            Dim pd =   reader = .ReadToEnd
               def = Convert.ToDouble(pd) + Convert.ToDouble(effetdefenset) + Convert.ToDouble(effetdcape) + Convert.ToDouble(effetdefensec) + Convert.ToDouble(effetdefensea)
     
             reader = .Close() 
     
    end sub

  8. #8
    Membre éclairé Avatar de -N4w4k-
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2011
    Messages
    545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2011
    Messages : 545
    Points : 801
    Points
    801
    Par défaut
    Salut,
    Mais comment récupérer leur valeur et non la donner lorsqu'on fait appelle à la fonction?
    Sinon tu peux créer une classe Stats et en faire le type de retour de ta fonction. Petit exemple:

    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
    27
    28
    29
    Class Stats
        Property Attaque As Integer
        Property Defense As Integer
        Property PointVie As Integer
    End Class
     
    Sub Main()
     
        Dim stats As Stats = LoadStats()
        MsgBox(stats.Attaque)
        MsgBox(stats.Defense)
        MsgBox(stats.PointVie)
     
    End Sub
     
    Private Function LoadStats() As Stats
        Dim stats As New Stats    '<--- au début on crée de nouveaux stats
     
        'Définition de la vie actuelle.
        Dim reader As New System.IO.StreamReader(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Zune\stats\pv.txt")
        Dim vie = reader.ReadLine
        stats.PointVie = Integer.Parse(vie)    '<--- on rempli les stats au fur et à mesure
        reader.Close()
        'Définition des points d'attaque
        'etc.
     
     
        Return stats    '<--- on renvoie les stats
    End Function
    Sinon, est-il possible de stocker cette fonction (et d'autres) dans une application extérieur et ainsi faire en sorte qu'on puisse faire appelle à cette "bibliothèque de fonction" depuis une autre application?
    Tu peux créer un nouveau projet de type "Bibliothèque de classes", ce qui générera une DLL que tu pourra importer dans n'importe quelle de tes applications. Ainsi les classes, modules et les fonctions présentes seront accessibles.
    J’ai des questions à toutes vos réponses!

  9. #9
    Membre du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut
    Merci de votre aide.
    Mais n4w4k, comment fais tu ensuit pour récupérer les stats de la class. Car avec return stats, comment fais tu pour récupérer les valeurs retournées?
    Sinon quel serait le code pour importer la bibliothèque de class?
    Cordialement.

  10. #10
    Membre éclairé Avatar de -N4w4k-
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2011
    Messages
    545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2011
    Messages : 545
    Points : 801
    Points
    801
    Par défaut
    Regarde la méthode Main() juste en dessous de la classe Stats, tu peux voir la manière dont on récupère le résultat de la fonction LoadStats().

    Pour la bibliothèque de classe, fais Nouveau > Projet > Bibliotheque de classe dans ta solution actuelle. Cela te créera un nouveau projet que tu pourras remplir avec tes classes et modules à partager. Ensuite, pour l'utiliser dans un autre projet de ta solution (car pour l'instant personne ne la connait), tu peux cliquer droit dans l'explorateur de solution sur le projet qui doit connaitre la bibliothèque de classe et "Ajouter un référence..". Tu auras le choix entre plusieurs type de référence: DLL, Projets, etc. Pour l'instant, choisi "Projets" et ta bibliotheque. Un simple "Imports ta_biblio" te donnera accès aux classes de celle-ci.
    Une fois que tu auras générer ta bibliotheque, la DLL sera présente dans debug ou release. Tu pourras l'ajouter à une autre solution à l'aide de Ajouter une référence.. > DLL > Parcourir
    J’ai des questions à toutes vos réponses!

  11. #11
    Membre du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut
    J'ai essayé mais lorsque que je mets tout dans la classe, il me met des erreurs au sub et à la fonction.
    Voici l'erreur:
    Instruction non valide dans un espace de noms.

  12. #12
    Membre éclairé Avatar de -N4w4k-
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2011
    Messages
    545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2011
    Messages : 545
    Points : 801
    Points
    801
    Par défaut
    Quand tu as des erreurs comme ça, en la tapant dans google tu as généralement un lien qui renvoie sur msdn et qui explique pourquoi tu as cette erreur.

    -> msdn
    J’ai des questions à toutes vos réponses!

  13. #13
    Membre du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut
    Merci. Donc si j'ai bien compris il faut éviter de mettre cela dans la class mais où la mettre alors?

  14. #14
    Membre éclairé Avatar de -N4w4k-
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2011
    Messages
    545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2011
    Messages : 545
    Points : 801
    Points
    801
    Par défaut
    Citation Envoyé par herroP Voir le message
    Merci. Donc si j'ai bien compris il faut éviter de mettre cela dans la class mais où la mettre alors?
    Au contraire.
    Déplacez l'instruction vers un emplacement situé à l'intérieur d'une définition de module, de classe, d'interface, de structure, d'énumération ou de délégué. (msdn)
    Cela veut dire que tu as mis du code en dehors d'une de ces structures (module, classe, interface, structure, enum, ou delegué).

    Étant donné que l'on n'a pas plus de détails, on ne peut pas savoir comment tu en es arrivé là Peut être que tu peux nous montré le fichier entier où apparaissent ces erreurs. Ça nous aiderait.
    J’ai des questions à toutes vos réponses!

  15. #15
    Membre du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut
    Je n'ai pas accès à mon ordi donc je ne peux paste montrer le code. Mais j'ai coller le code que tu m'a donné dans la class par défaut de ma bibliothèque de class...

  16. #16
    Membre éclairé Avatar de -N4w4k-
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2011
    Messages
    545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2011
    Messages : 545
    Points : 801
    Points
    801
    Par défaut
    Il faudra que tu nous montre l'endroit où il y a l'erreur, sans ça on ne peut rien faire à part des suppositions.. et encore!
    J’ai des questions à toutes vos réponses!

  17. #17
    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
    Avant d'aller plus loin, il faudrait peut-être nous préciser quel type de programme tu développes.
    Il me semble qu'il sagit d'un jeu.
    Est-ce un MMORPG ?
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  18. #18
    Membre du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut
    Excusez moi de ne pas avoir répondu à la discussion : j'ai provisoirement arrêté le développement de mon jeu (c'est en quelque sorte un MMORPG, oui).
    Mais j'ai commencé un petite application qui permet de calculer les prix selon des choix. Mon application procède d'abord par dans l'application windows form à l'identification. Trois champs sont à remplir : le prénom, le nom et l'adresse mail. Mais vu que je changerais de form pour les prochaines étapes, il faut que ces informations soit sauvegardée. Je n'ai pas envie de les sauvegarder dans un fichier .txt car je ne veux pas que mon application laisse des traces sur l'ordinateur de l'utilisateur.
    Donc comment faire pour sauvegarder ces informations? Dans des class peut-être?
    Merci d'avance.

  19. #19
    Membre du Club
    Homme Profil pro
    Amateur vb.net
    Inscrit en
    Avril 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Amateur vb.net
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 99
    Points : 60
    Points
    60
    Par défaut
    Laissez tombais pour l'autre question.
    Sinon, j'ai fait ce que tu m'as dit n4w4k.
    J'ai donc importé ma bibliothèque de class en faisant Parcourir > mes_class > obj > Debug > TempPE > My Projects.Ressources.Designer.vb.dll .
    Ai-je bien fait car en mettant ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
            Dim stats As Stats = LoadStats()
            MsgBox(stats.Attaque)
            MsgBox(stats.Defense)
            MsgBox(stats.PointVie)
     
     
     
        End Sub
    il souligne en bleu le second Stats de "Dim stats As Stats = LoadStats().
    Et il me dit que le type Stats est non défini.

    Auriez-vous une solution?

Discussions similaires

  1. [MySQL] Comment stocker les résultats d'un enregistrement dans des variables?
    Par Alexandrebox dans le forum PHP & Base de données
    Réponses: 26
    Dernier message: 30/07/2010, 21h23
  2. [AC-2003] Comment stocker les valeurs d'un champ d'un recordset
    Par megdi dans le forum VBA Access
    Réponses: 1
    Dernier message: 07/09/2009, 13h29
  3. Réponses: 3
    Dernier message: 13/03/2009, 15h20
  4. Réponses: 21
    Dernier message: 18/11/2008, 14h36
  5. Comment insérer les valeurs d'une requete dans une variable tableau
    Par uptoditime dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 04/12/2007, 12h03

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