Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Você coloca uma definição de propriedade entre uma instrução Property
e uma instrução End Property
. Dentro dessa definição, você define um Get
procedimento, um Set
procedimento ou ambos. Todo o código da propriedade está contido nesses procedimentos.
O Get
procedimento recupera o valor da propriedade e o Set
procedimento armazena um valor. Se você quiser que a propriedade tenha acesso de leitura/gravação, defina ambos os procedimentos. Para uma propriedade somente leitura, você define apenas Get
e, para uma propriedade somente gravação, você define apenas Set
.
Para criar uma propriedade
Fora de qualquer propriedade ou procedimento, use uma Instrução de Propriedade, seguida por uma instrução
End Property
.Se a propriedade usa parâmetros, siga a
Property
palavra-chave com o nome do procedimento e, em seguida, a lista de parâmetros entre parênteses.Siga os parênteses com uma
As
cláusula para especificar o tipo de dados do valor da propriedade. Você deve especificar o tipo de dados mesmo para uma propriedade somente gravação.Adicione os procedimentos
Get
eSet
, conforme apropriado. Veja as instruções a seguir.
Para criar um procedimento Get que recupera um valor de propriedade
Entre as instruções e
Property
asEnd Property
instruções, escreva uma Instrução Get, seguida de uma instruçãoEnd Get
. Você não precisa definir parâmetros para oGet
procedimento.Coloque as instruções de código para recuperar o valor da propriedade entre as instruções
Get
eEnd Get
. Esse código pode incluir outros cálculos e manipulações de dados, além de gerar e retornar o valor da propriedade.Use uma
Return
instrução para retornar o valor da propriedade para o código de chamada.
Você deve escrever um Get
procedimento para uma propriedade de leitura-gravação e para uma propriedade somente leitura. Você não deve definir um Get
procedimento para uma propriedade somente gravação.
Para criar um procedimento Set que grava o valor de uma propriedade
Entre as instruções
Property
eEnd Property
, escreva uma instrução Set, seguida por uma instruçãoEnd Set
.Na instrução
Set
, opcionalmente, siga a palavra-chaveSet
com uma lista de parâmetros entre parênteses. Se a lista de parâmetros não estiver presente ou estiver vazia, um parâmetro implícito nomeadoValue
será definido, cujo tipo é o tipo da própria propriedade. Se a lista de parâmetros não estiver vazia, você poderá usar um nome diferente, se apropriado, mas o parâmetro deverá ter o mesmo tipo de dados que a própria propriedade.Coloque as instruções de código para armazenar um valor na propriedade entre as instruções
Set
eEnd Set
. Esse código pode incluir outros cálculos e manipulações de dados, além de validar e armazenar o valor da propriedade.Use o parâmetro de valor para aceitar o valor fornecido pelo código de chamada. Você pode armazenar esse valor diretamente em uma instrução de atribuição ou usá-lo em uma expressão para calcular o valor interno a ser armazenado.
Você deve escrever um Set
procedimento para uma propriedade de leitura-gravação e para uma propriedade somente gravação. Você não deve definir um Set
procedimento para uma propriedade somente leitura.
Exemplo
O exemplo a seguir cria uma propriedade de leitura/gravação que armazena um nome completo como dois nomes constituintes, o primeiro nome e o sobrenome. Quando o código de chamada é lido fullName
, o Get
procedimento combina os dois nomes constituintes e retorna o nome completo. Quando o código de chamada atribui um novo nome completo, o Set
procedimento tenta dividi-lo em dois nomes constituintes. Se ele não encontrar um espaço, armazenará tudo como o nome.
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
O exemplo a seguir mostra chamadas típicas para os procedimentos de propriedade de fullName
. A primeira chamada define o valor da propriedade e a segunda chamada o recupera.
fullName = "MyFirstName MyLastName"
MsgBox(fullName)
Consulte também
- Procedimentos
- Procedimentos de propriedade
- Parâmetros e Argumentos de Procedimento
- Diferenças entre propriedades e variáveis no Visual Basic
- Como declarar uma propriedade com níveis de acesso mistos
- Como chamar um procedimento de propriedade
- Como declarar e chamar uma propriedade padrão no Visual Basic
- Como colocar um valor em uma propriedade
- Como obter um valor de uma propriedade