Copyright © 2009 Janusz Bonarowski
1
VB_4.0_Podprogram_Sub
Wykonać aplikację pozwalająca dodawać dwie liczby wpisywane do TextBox-ów.
Operację dodawania wykonać oddzielną procedurą typu Sub.
Rys. 1. Propozycja formularza
Kod aplikacji
Listing 1
Private
Sub
btnDodaj_Click(
ByVal
sender
As
System.Object, _
ByVal
e
As
System.EventArgs)
Handles
btnDodaj.Click
Dim
L1, L2, W
As
Single
L1 =
CSng
(txtL1.Text)
L2 =
CSng
(txtL2.Text)
' wywołanie procedury
Call
suma(L1, L2, W)
' 1 2 3 kolejność argumentów.
lblW.Text = W.ToString
End
Sub
----------------------------------------------------------------
Private
Sub
suma(
ByVal
Liczba1,
ByVal
Liczba2,
ByRef
Wynik)
'kolejność argumentów 1 2 ^^^^^ 3
Wynik = Liczba1 + Liczba2
End
Sub
Podczas wywoływania procedury suma przekazywane są do niej dwie wartości
zmiennych L1 i L2 znajdujących się na miejscu pierwszym i drugim listy argumentów, na
trzecim miejscu znaduje się wynik działania procudry.
Podczas pisania własnej procedury - środowisko automatycznie dopisuje przed
nazwami argumentów słowa kluczowe ByVal określające tryb przekazywania argumentów.
Taki tryb oznacza przekazanie argumentu przez wartość. Konsekwencją trybu ByVal jest to,
ż
e żadna zmiana wartości argumentów wewnątrz procedury nie jest przekazywana na
zewnątrz.
Aby w programie nadrzędnym uzyskać wartość argumentu obliczonego w procedurze -
należy określić tryb przekazywania wartości tego argumentu na ByRef (przez referencje).
Taką zmianę należy wykonać samodzielnie.