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
Propertypalavra-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
Aspara 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
GeteSet, conforme apropriado. Veja as instruções a seguir.
Para criar um procedimento Get que recupera um valor de propriedade
Entre as
Propertyinstruções eEnd Property, escreva uma instrução Get seguida de umaEnd Getinstrução. Não é necessário definir parâmetros para oGetprocedimento.Coloque as instruções de código para recuperar o valor da propriedade entre
GeteEnd 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
Returninstruçã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
Propertyinstruções eEnd Property, escreva uma Instrução Set, seguida de umaEnd Setinstrução.SetNa instrução, opcionalmente, siga aSetpalavra-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 nomeadoValueserá 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
SeteEnd 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