Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Vous placez une définition de propriété entre une Property
instruction et une End Property
instruction. Dans cette définition, vous définissez une Get
procédure, une Set
procédure ou les deux. Tout le code de la propriété se trouve dans ces procédures.
La Get
procédure récupère la valeur de la propriété et la Set
procédure stocke une valeur. Si vous souhaitez que la propriété dispose d’un accès en lecture/écriture, vous devez définir les deux procédures. Pour une propriété en lecture seule, vous définissez uniquement Get
et pour une propriété en écriture seule, vous définissez uniquement Set
.
Pour créer une propriété
En dehors de toute propriété ou procédure, utilisez une instruction Property, suivie d’une
End Property
instruction.Si la propriété accepte des paramètres, suivez le
Property
mot clé portant le nom de la procédure, puis la liste des paramètres entre parenthèses.Suivez les parenthèses avec une
As
clause pour spécifier le type de données de la valeur de la propriété. Vous devez spécifier le type de données même pour une propriété en écriture seule.Ajoutez et
Set
procédezGet
comme il convient. Consultez les instructions suivantes.
Pour créer une procédure Get qui récupère une valeur de propriété
Entre les instructions et
End Property
lesProperty
instructions, écrivez une instruction Get, suivie d’uneEnd Get
instruction. Vous n’avez pas besoin de définir de paramètres pour laGet
procédure.Placez les instructions de code pour récupérer la valeur de la propriété entre les instructions et
End Get
lesGet
instructions. Ce code peut inclure d’autres calculs et manipulations de données en plus de générer et de retourner la valeur de la propriété.Utilisez une
Return
instruction pour renvoyer la valeur de la propriété au code appelant.
Vous devez écrire une Get
procédure pour une propriété en lecture-écriture et pour une propriété en lecture seule. Vous ne devez pas définir de Get
procédure pour une propriété en écriture seule.
Pour créer une procédure Set qui écrit la valeur d’une propriété
Entre les instructions et
End Property
lesProperty
instructions, écrivez une instruction Set, suivie d’uneEnd Set
instruction.Dans l’instruction
Set
, suivez éventuellement leSet
mot clé avec une liste de paramètres entre parenthèses. Si la liste de paramètres n’est pas présente ou est vide, un paramètre implicite nomméValue
est défini, dont le type est le type de la propriété elle-même. Si la liste de paramètres n’est pas vide, vous pouvez utiliser un nom différent le cas échéant, mais le paramètre doit avoir le même type de données que la propriété elle-même.Placez les instructions de code pour stocker une valeur dans la propriété entre les instructions et
End Set
lesSet
instructions. Ce code peut inclure d’autres calculs et manipulations de données en plus de valider et de stocker la valeur de la propriété.Utilisez le paramètre valeur pour accepter la valeur fournie par le code appelant. Vous pouvez stocker cette valeur directement dans une instruction d’affectation ou l’utiliser dans une expression pour calculer la valeur interne à stocker.
Vous devez écrire une Set
procédure pour une propriété en lecture-écriture et pour une propriété en écriture seule. Vous ne devez pas définir de Set
procédure pour une propriété en lecture seule.
Exemple :
L’exemple suivant crée une propriété en lecture/écriture qui stocke un nom complet sous la forme de deux noms constituants, le prénom et le nom. Lorsque le code appelant lit fullName
, la procédure Get
combine les deux noms constituants et retourne le nom complet. Lorsque le code appelant attribue un nouveau nom complet, la procédure Set
tente de le diviser en deux noms constitutifs. S’il ne trouve pas d’espace, il le stocke comme prénom.
Dim firstName, lastName As String
Property fullName() As String
Get
If lastName = "" Then
Return firstName
Else
Return firstName & " " & lastName
End If
End Get
Set(ByVal Value As String)
Dim space As Integer = Value.IndexOf(" ")
If space < 0 Then
firstName = Value
lastName = ""
Else
firstName = Value.Substring(0, space)
lastName = Value.Substring(space + 1)
End If
End Set
End Property
L’exemple suivant montre des appels classiques aux procédures de propriété de fullName
. Le premier appel définit la valeur de propriété et le deuxième appel le récupère.
fullName = "MyFirstName MyLastName"
MsgBox(fullName)
Voir aussi
- Procédures
- Procédures de propriété
- Paramètres et arguments d’une procédure
- Différences entre les propriétés et les variables en Visual Basic
- Procédure : déclarer une propriété avec des niveaux d’accès mixte
- Comment : appeler une procédure de propriété
- Comment : déclarer et appeler une propriété par défaut en Visual Basic
- Comment : placer une valeur dans une propriété
- Comment : obtenir une valeur d'une propriété