Jak cię złapią, to znaczy, że oszukiwałeś. Jak nie, to znaczy, że posłużyłeś się odpowiednią taktyką.
Wpisz nastêpuj¹ce procedury Property Let w module klasy cPracownik
Property Let Id(ref As String) m_Id = ref End Property Property Let Nazwisko(N As String) m_Nazwisko = N End Property Property Let Imiê(I As String) m_Imie = I End Property Property Let Pensja(ByVal Pz³ As Currency) m_Pensja = Pz³ End Property \ccess 2000 Kolekcje obiektów i klasy 175 : Property procedury instrukcje rzypisaæ j¹ rzy u¿yciu )¿liwiaj¹ce nie trzeba rzeznaczo- :i (id, Na- lik: Procedury Property Let wymagaj¹ co najmniej jednego argumentu, który okreœla wartoœæ, jak¹ zamierzasz ustawiæ. Argument ten przekazywany jest najczêœciej przez wartoœæ, st¹d te¿ jego nazwa poprzedzona jest s³owem kluczowym Byvai. Typ argumentu musi zgadzaæ siê z typem danych zwracanych przez procedurê Property Get o tej samej nazwie. Procedury Property Let maj¹ tak¹ sam¹ nazwê, jak procedury Property Get. Zwróæ uwagê, ¿e pomijaj¹c definicjê procedury Property Let dla numeru pracownika, zdefiniowaliœmy Nr jako w³aœciwoœæ przeznaczon¹ tylko do odczytu (Read-only). Typy procedur Property Aby okreœliæ zasiêg danej procedury Property, mo¿esz umieœciæ s³owo kluczowe Public, Private lub static przed nazw¹ procedury typu property. Na przyk³ad: Aby metoda by³a dostêpna poza modu³em klasy, procedurê nale¿y poprzedziæ s³owem kluczowym Public. Sk³adnia formatu jest nastêpuj¹ca: Public Property Get Imiê ( ) As String Aby procedura Property Get by³a dostêpna dla innych procedur na poziomie modu³u, nale¿y u¿yæ nastêpuj¹cego formatu sk³adni: Private Property Get Imiê ( ) As String Aby zachowaæ zmienne lokalne procedury Property Get pomiêdzy procedurami, nale¿y u¿yæ nastêpuj¹cego formatu sk³adni: Static Property Get Imiê ( String Je¿eli procedura Property nie jest poprzedzona s³owem kluczowym Public lub private, procedura na ogó³ jest interpretowana jako Public. Je¿eli pominiêto s³owo kluczowe static, to wartoœci zmiennych lokalnych nie s¹ zachowywane miêdzy odwo³aniami do innych procedur. Tworzenie metod obiektu Oprócz w³aœciwoœci obiekty posiadaj¹ zazwyczaj jedn¹ lub wiêcej metod. Metoda jest czynnoœci¹, któr¹ obiekt mo¿e wykonaæ. Metody wykonuj¹ operacje na danych przechowywanych w klasie obiektu. Metody tworzy siê za pomoc¹ znanych nam ju¿ z poprzednich podrozdzia³ów procedur typu sub lub Function. Tworzony w tym podrozdziale obiekt pracownik (cPracownik) ma jedn¹ metodê, która umo¿li- 176 Programowanie w AcceB wia obliczenie nowej pensji pracownika. Zak³adamy, ¿e pensjê pracownika! powiêkszyæ lub zmniejszyæ o okreœlony procent lub wskazan¹ kwotê. 1. w mc Wpisz podan¹ poni¿ej procedurê typu funkcji w module klasy cPracownim tego lubv Public Function KalkNowaPensja(typ As Integer, _ ObecnaPensja As Currency, kwota As Long) As Currency Select Case typ Case 1 ' opcja procent Dim Set KalkNowaPensja = ObecnaPensja + ((ObecnaPensja + kwota) / J Case 2 ' opcja kwota KalkNowaPensja = ObecnaPensja + kwota End Select End Function Publiczna funkcja KalkNowaPensja zdefiniowana w module klasy stajesij tod¹ obiektu cPracownik. W celu obliczenia nowej pensji procedura VBA zze| modu³u klasy musi przekazaæ trzy argumenty: typ, ObecnaPensja oraz kwota, ment typ okreœla typ kalkulacji. Typ l oblicza procentow¹ zmianê pensji, zmienia pensjê o wskazan¹ kwotê. Argument ObecnaPensja jest bie¿¹c¹ pei cownika, natomiast argument kwota wskazuje liczbê, o któr¹ nale¿y zmieniæ pensjê. Metody klasy Tylko metody, które bêd¹ dostêpne poza modu³em danej klasy, powinnyklarowane jako Public, wszystkie pozosta³e jako Private. Metody wykonuj¹ pewne operacje na danych znajduj¹cych siê w danej Id Jeœli metoda musi zwróciæ jak¹œ wartoœæ, nale¿y sporz¹dziæ funkcjê. Wnym razie trzeba napisaæ procedurê typu sub. zmi Dii Dii Tworzenie instancji klasy ob Po wpisaniu w module klasy niezbêdnych dla aplikacji VBA procedur prJ Get, Property Let, procedur Sub lub Function nale¿y sporz¹dziæ now¹ ins klasy, czyli w³asny obiekt. Aby utworzyæ instancjê klasy, nale¿y zadeklaii w module standardowym zmienn¹ obiektow¹, która bêdzie zawiera³a odwo³ani obiektu. Je¿eli nazw¹ klasy jest cPracownik, to now¹ instancjê tej klasy mo¿nai rzyæ w nastêpuj¹cy sposób: Dim prac As New cPracownik Z w Access 2000 iwnika mo¿na cownik: :a) / 100) staje siê me-SA z zewn¹trz kwota. Argu->ensji, typ 2 :¹ pensj¹ pra-deniæ bie¿¹c¹ vinny byæ de- lej klasie. :. W przeciw- llir Property iw¹ instancjê zadeklarowaæ idwo³anie do mo¿na utwo- 177 Kolekcje obiektów i klasy
|
WÄ…tki
|