none
Créer des paramètres via une TextBox et Listbox RRS feed

  • Question

  • Bonjour.

    Je suis en train de programmer un logiciel avec VB Express pour gérer mon métier dans un MMORPG nommé Dofus. Ce logiciel me permettrait de pouvoir gérer mes clients qui m’achètent du pain. Le problème est que je je sait pas faire ce qui suit :

    Je voudrait que quand j'ajoute un utilisateur via une TextBox, Le logiciel ajoute son nom a une ListBox puis me créer les My.Settings suivants :

    - My.Settings.nomdujoueur = (Textbox1.text)

    -My.Settings.nomdujoueurpoints = "0"

    Il faudrait ensuite que la valeur du paramètre "nomdujoueurpoints" soient éditable via une TextBox à côté du label ou s'affiche les points, mais sa je sait faire.

    Voila j'espere que vous pourrez m'aider !

    Merci.

    dimanche 1 décembre 2013 17:33

Réponses

  • Bonjour, pourquoi ne pas créer un objet "Client" afin de recueillir les informations du client :

    Public Class Form1
    
        Public listeClient As New List(Of Client)
    
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    
        End Sub
    
        ' Recherche d'un client par son nom de joueur.
        Private Function RechercherClient(ByVal nom As String) As Client
            For Each cli In listeClient : If cli.nomduJoueur = nom Then Return cli
            Next
    
            Return Nothing
        End Function
    
        ' Ajout d'un client.
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            listeClient.Add(New Client With {.nomduJoueur = TextBox1.Text, .Point = TextBox2.Text, .DateInscr = TimeOfDay})
        End Sub
    End Class
    
    
    Public Class Client
        Public nomduJoueur As String
        Public Point As String
        Public DateInscr As String
        ' Ajouter autant d'infos que necessaire.
    
        ' Enregistrement du joueur (ex: dans un fichier .txt)
        Public Sub Enregistrer()
            IO.File.WriteAllLines("chemin\fichier.txt", New String() {nomduJoueur + " " + DateInscr + " " + Point + vbCrLf})
        End Sub
    
    End Class

    Pour rechercher un client précis :

    dim monClient as Client
    monClient = RechercherClient("JeanPierre")
    
    'Ensuite les "settings" :
    monClient.nomduJoueur = "nouveau nom"
    monClient.point = "50"
    
    'Ré-enregistrement
    monClient.Enregistrer()

     
    • Proposé comme réponse Aurel Bera lundi 2 décembre 2013 12:57
    • Marqué comme réponse Aurel Bera vendredi 6 décembre 2013 07:57
    lundi 2 décembre 2013 08:39

Toutes les réponses

  • Bonjour,

    Il n'est pas possible d'ajouter dynamiquement des settings.

    En revanche vous pouvez créer un settings de type "StringCollection" qui représente une collection de valeur.

    Regardez cet article pour plus d'informations (l'exemple n°2) : http://social.msdn.microsoft.com/Forums/en-US/ed1491b4-65ed-4a06-a770-d37d863ec24e/how-do-i-persiststore-user-settings-using-mysettings-in-vbnet?forum=Vsexpressvb

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte logiciel/Consultant/Formateur Freelance - P.O.S Informatique
    Blog : http://gilles.tourreau.fr - Suivez-moi sur Twitter
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5/4.0
    - MCSA : SQL Server 2012
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5/4.0 / TFS 2010 / Windows Azure

    • Proposé comme réponse Aurel Bera lundi 2 décembre 2013 12:56
    dimanche 1 décembre 2013 20:18
    Modérateur
  • Bonjour, pourquoi ne pas créer un objet "Client" afin de recueillir les informations du client :

    Public Class Form1
    
        Public listeClient As New List(Of Client)
    
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    
        End Sub
    
        ' Recherche d'un client par son nom de joueur.
        Private Function RechercherClient(ByVal nom As String) As Client
            For Each cli In listeClient : If cli.nomduJoueur = nom Then Return cli
            Next
    
            Return Nothing
        End Function
    
        ' Ajout d'un client.
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            listeClient.Add(New Client With {.nomduJoueur = TextBox1.Text, .Point = TextBox2.Text, .DateInscr = TimeOfDay})
        End Sub
    End Class
    
    
    Public Class Client
        Public nomduJoueur As String
        Public Point As String
        Public DateInscr As String
        ' Ajouter autant d'infos que necessaire.
    
        ' Enregistrement du joueur (ex: dans un fichier .txt)
        Public Sub Enregistrer()
            IO.File.WriteAllLines("chemin\fichier.txt", New String() {nomduJoueur + " " + DateInscr + " " + Point + vbCrLf})
        End Sub
    
    End Class

    Pour rechercher un client précis :

    dim monClient as Client
    monClient = RechercherClient("JeanPierre")
    
    'Ensuite les "settings" :
    monClient.nomduJoueur = "nouveau nom"
    monClient.point = "50"
    
    'Ré-enregistrement
    monClient.Enregistrer()

     
    • Proposé comme réponse Aurel Bera lundi 2 décembre 2013 12:57
    • Marqué comme réponse Aurel Bera vendredi 6 décembre 2013 07:57
    lundi 2 décembre 2013 08:39
  • Bonjour,

    Est-ce que vous avez testé les solutions proposées ? Merci de partager avec nous les résultats, afin que d'autres personnes avec le même problème puissent profiter de cette solution.

    Cordialement,


    Aurel BERA, MSFT
    MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
    S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.

    mercredi 4 décembre 2013 13:28