Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Você inclui uma definição de propriedade entre uma Property
instrução e uma End Property
instrução. Dentro dessa definição, você define um Get
procedimento, um Set
procedimento ou ambos. Todo o código da propriedade está dentro destes procedimentos.
O procedimento Get
recupera o valor da propriedade e o procedimento Set
armazena um valor. Se desejar que a propriedade tenha acesso de leitura e de gravação, terá de definir os dois procedimentos. Para uma propriedade somente leitura, você define somente Get
, e para uma propriedade somente gravação, você define somente Set
.
Para criar uma propriedade
Fora de qualquer propriedade ou procedimento, use uma Declaração de Propriedade, seguida de uma declaraçã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 cláusula
As
para especificar o tipo de dados do valor da propriedade. Você deve especificar o tipo de dados mesmo que seja uma propriedade de escrita apenas.Adicionar 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
Property
instruções eEnd Property
, escreva uma instrução Get seguida de umaEnd Get
instrução. Não é necessário definir parâmetros para oGet
procedimento.Coloque as instruções de código para recuperar o valor da propriedade entre
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 de apenas leitura. Você não deve definir um Get
procedimento para uma propriedade somente gravação.
Criar um procedimento "set" que inscreva o valor de uma propriedade
Entre as
Property
instruções eEnd Property
, escreva uma Instrução Set, seguida de umaEnd Set
instrução.Set
Na instrução, opcionalmente, siga aSet
palavra-chave 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 declaraçõ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 value 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 e escrita e para uma propriedade apenas de escrita. 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 lê fullName
, o procedimento Get
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 não encontrar um espaço disponível, armazena tudo como o primeiro 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)
Ver também
- Procedimentos
- Procedimentos de propriedade
- Parâmetros e argumentos do 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 associado a uma propriedade
- Como: Declarar e chamar uma propriedade padrão no Visual Basic
- Como: Colocar um valor em uma propriedade
- Como Obter o Valor de uma Propriedade