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 :

Classes dans Visual Basic [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Ingénieur après-vente
    Inscrit en
    Novembre 2014
    Messages
    367
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur après-vente

    Informations forums :
    Inscription : Novembre 2014
    Messages : 367
    Par défaut Classes dans Visual Basic
    Bonjour,

    Est-ce que vous pourriez m'expliquer à quoi sert exactement la ligne "p_nom = value.ToUpper()". Je peine réellement à comprendre. Je remarque qu'apparemment elle ne sert pas à convertir toutes les lettre du nom en majuscules, ni la première lettre, ni je ne sais quoi d'autre... En fait je ne vois aucun effet concert à cette ligne du code...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Public Property nom() As String
            Get
                Return p_nom
            End Get
            Set(ByVal value As String)
                p_nom = value.ToUpper()
            End Set
        End Property

    Voici le code lié au précédent si jamais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Public Sub New(ByVal n As String, ByVal p As String, ByVal na As Date)
            nom = n
            prenom = p
            naissance = na
        End Sub
    Merci pour votre aide précieuse.

  2. #2
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2013
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 93
    Par défaut
    ToUpper met bien en Majuscule toutes les lettres d'une chaine de caractère.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Public Property Nom() As [String]
    	Get
    		Return p_name
    	End Get
    	Set(ByVal value As String)
    		p_name = value.ToUpper()
    	End Set
    End Property
    Private p_name As String
     
    Public Sub New(name As String)
    	Nom = name
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Sub Main()
    	Dim oui As New Class1("Bonjour")
    	Console.WriteLine(oui.Nom)
    	Console.Read()
    End Sub


    En gros chaque fois qu'on va attribuer une valeur à la proriété elle va se mettre en Majuscule.

  3. #3
    Membre très actif
    Homme Profil pro
    Ingénieur après-vente
    Inscrit en
    Novembre 2014
    Messages
    367
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur après-vente

    Informations forums :
    Inscription : Novembre 2014
    Messages : 367
    Par défaut
    Bonjour,

    Merci beaucoup pour la réponse et pour votre exemple. Voici toutefois mon code dont les noms et prénom restent toujours qu'écrits initialement et qui ne sont jamais mutés en majuscules. C'est le cas à la fois de "jean dupont" et de "alain delon" :

    La classe :

    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
    Public Class Personne
        Private p_nom As String
        Private p_prenom As String
        Private p_naissance As String
     
        Public Sub New(ByVal n As String, ByVal p As String, ByVal na As Date)
            p_nom = n
            p_prenom = p
            p_naissance = na
        End Sub
     
        Public Sub New()
            p_nom = "jean"
            p_prenom = "dupont"
     
        End Sub
     
     
        Public Property nom() As String
            Get
                Return p_nom
            End Get
     
            Set(ByVal value As String)
                p_nom = value.ToUpper()
            End Set
        End Property
     
        Public Property prenom() As String
            Get
                Return p_prenom
            End Get
            Set(ByVal value As String)
                p_prenom = value.ToUpper()
            End Set
        End Property
     
     
        Public Overrides Function ToString() As String
            Return nom & " " & prenom
        End Function
    End Class
    Le main :


    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
    Public Class Form1
     
        Private col As List(Of Personne) = New List(Of Personne)
        Private index As Integer
        Private oui As New Personne
     
        Private Sub initCol()
            Dim p As Personne
            p = New Personne("delon", "alain", New Date(1972, 6, 12))
            col.Add(p)
     
            p = New Personne()
            col.Add(p)
        End Sub
     
     
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            initCol()
     
        End Sub
     
        Private Sub displayElt(ByVal p As Personne)
            txtNom.Text = p.nom
            txtPrenom.Text = p.prenom
     
        End Sub
     
        Private Sub btnPremier_Click(sender As Object, e As EventArgs) Handles btnPremier.Click
            index = 0
            displayElt(col.Item(index))
     
        End Sub
     
        Private Sub btnPrecedent_Click(sender As Object, e As EventArgs) Handles btnPrecedent.Click
            displayElt(col.Item(1))
        End Sub
     
        Private Sub btnSuivant_Click(sender As Object, e As EventArgs) Handles btnSuivant.Click
            displayElt(col.Item(2))
        End Sub
     
        Private Sub updateButtons()
            btnPremier.Enabled = index > 0
     
        End Sub
    End Class

  4. #4
    Membre Expert Avatar de mactwist69
    Homme Profil pro
    Développement VB.NET
    Inscrit en
    Janvier 2007
    Messages
    1 707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement VB.NET
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 707
    Par défaut
    Parce que pour que l'opération Upper se situe dans la Propriété, or tu ne l'utilises jamais.


    Soit dans le formulaire tu utilises la propriétés :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     p = New Personne()
     p.Nom="alain"
    Soit dans le constructeur tu utilises la propriété plutôt que la variable directement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     Public Sub New(ByVal n As String, ByVal p As String, ByVal na As Date)
            Me.nom = n
            Me.prenom = p
            p_naissance = na
        End Sub

    Sinon, tu pourrais ignorer tout ça, pour mettre le Upper dans le get....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Get
                Return p_nom.ToUpper()
      End Get

  5. #5
    Membre très actif
    Homme Profil pro
    Ingénieur après-vente
    Inscrit en
    Novembre 2014
    Messages
    367
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur après-vente

    Informations forums :
    Inscription : Novembre 2014
    Messages : 367
    Par défaut
    Excellent, merci infiniment !

    Avec autorisation, je laisse pour l'instant encore le fil ouvert au cas où j'ai une autre question sur ce même thème.

    Un grand merci pour votre aide !

  6. #6
    Membre Expert
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par wallace27 Voir le message
    Excellent, merci infiniment !

    Avec autorisation, je laisse pour l'instant encore le fil ouvert au cas où j'ai une autre question sur ce même thème.

    Un grand merci pour votre aide !
    Si cela réponds à ta question alors comme le stipule la charte : tu passes le topic en résolu (ce n'est pas tant pour toi mais pour les autres et/ou la communauté)

    A+

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

Discussions similaires

  1. Notion objet et classe Friend dans visual basic
    Par phdenis dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 07/06/2008, 19h57
  2. Supprimer un objet de classe dans visual basic
    Par Access Newbie dans le forum Access
    Réponses: 4
    Dernier message: 02/08/2006, 20h26
  3. Les onglets dans Visual Basic
    Par kilhom dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 22/10/2005, 19h33
  4. Intégration d'un SDK dans Visual Basic
    Par <-NicO-> dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 25/02/2005, 22h53
  5. Comment utiliser Opengl dans Visual Basic 6
    Par fun31 dans le forum OpenGL
    Réponses: 1
    Dernier message: 03/12/2004, 10h17

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