Sdílet prostřednictvím


Postupy: Vytvoření vlastnosti (Visual Basic)

Definici vlastnosti uzavřete mezi Property příkaz a End Property příkaz. V této definici definujete proceduru, proceduru GetSet nebo obojí. Veškerý kód vlastnosti se nachází v těchto procedurách.

Procedura Get načte hodnotu vlastnosti a procedura Set uloží hodnotu. Pokud chcete, aby vlastnost měla přístup pro čtení a zápis, musíte definovat oba postupy. U vlastnosti jen pro čtení definujete pouze Geta pro vlastnost jen pro zápis definujete pouze Set.

Vytvoření vlastnosti

  1. Mimo jakoukoli vlastnost nebo proceduru použijte příkaz Property, následovaný příkazem End Property .

  2. Pokud vlastnost přebírá parametry, postupujte podle klíčového Property slova s názvem procedury, pak seznam parametrů v závorkách.

  3. Postupujte podle závorek s As klauzulí a určete datový typ hodnoty vlastnosti. Datový typ musíte zadat i pro vlastnost jen pro zápis.

  4. Podle potřeby přidejte Get postupy Set . Podívejte se na následující pokyny.

Vytvoření procedury Get, která načte hodnotu vlastnosti

  1. Mezi příkazy Property a End Property příkazy napište příkaz Get následovaný příkazem End Get . Pro proceduru Get nemusíte definovat žádné parametry.

  2. Umístěte příkazy kódu pro načtení hodnoty vlastnosti mezi příkazy Get a End Get příkazy. Tento kód může kromě generování a vrácení hodnoty vlastnosti zahrnovat i další výpočty a manipulaci s daty.

  3. Return Pomocí příkazu vrátíte hodnotu vlastnosti do volajícího kódu.

Musíte napsat proceduru Get pro vlastnost pro čtení i zápis a pro vlastnost jen pro čtení. Pro vlastnost jen pro zápis nesmíte definovat Get proceduru.

Vytvoření procedury Set, která zapíše hodnotu vlastnosti

  1. Mezi příkazy Property a End Property příkazy napište příkaz Set následovaný příkazem End Set .

  2. Set V příkazu volitelně postupujte podle klíčového Set slova se seznamem parametrů v závorkách. Pokud seznam parametrů neexistuje nebo je prázdný, je definován implicitní parametr s názvem Value , jehož typ je typem samotné vlastnosti. Pokud seznam parametrů není prázdný, můžete v případě potřeby použít jiný název, ale parametr musí mít stejný datový typ jako samotná vlastnost.

  3. Umístěte příkazy kódu pro uložení hodnoty ve vlastnosti mezi Set příkazy a End Set příkazy. Tento kód může kromě ověřování a ukládání hodnoty vlastnosti zahrnovat i další výpočty a manipulaci s daty.

  4. Pomocí parametru value přijměte hodnotu zadanou volajícím kódem. Tuto hodnotu můžete uložit buď přímo v příkazu přiřazení, nebo ji použít ve výrazu k výpočtu interní hodnoty, která se má uložit.

Musíte napsat proceduru Set pro vlastnost pro čtení i zápis a pro vlastnost jen pro zápis. Není nutné definovat proceduru Set pro vlastnost jen pro čtení.

Příklad

Následující příklad vytvoří vlastnost pro čtení a zápis, která ukládá celé jméno jako dva základní názvy, křestní jméno a příjmení. Při čtení fullNameGet volajícího kódu se procedura zkombinuje se dvěma základními názvy a vrátí celý název. Když volající kód přiřadí nový úplný název, Set pokusí se ho rozdělit do dvou základních názvů. Pokud prostor nenajde, uloží ho jako křestní jméno.

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

Následující příklad ukazuje typické volání procedur fullNamevlastnosti . První volání nastaví hodnotu vlastnosti a druhé volání ji načte.

fullName = "MyFirstName MyLastName"
MsgBox(fullName)

Viz také