A láthatóság zónái
A változók láthatósági zónái
Most beszéljünk egy fontos eszközről a Visual Basic programozásának kényelméről és megbízhatóságáról - a változók, eljárások és egyéb Visual Basic elemek láthatósági zónáinak beállítására szolgáló mechanizmusról. A 17.2-ben már találkoztunk ezzel a mechanizmussal, amikor az eljárásban bejelentett változók helyiek voltak az eljárásban, azaz láthatók az eljáráson kívül. Ezért nem használhatók más modulfolyamatokban. Ha elfelejtette ezt a részt, olvassa el.
Újraolvassa? Rendben van. A Visual Basic változóinak esetében a láthatóság három zónája kerül meghatározásra:
Helyi eljárásváltozók
Csak az azonosítási eljárás során láthatók
Az üzemeltető kijelentette, hogy az eljárás belsejében van
A modul helyi változói
Mindenhol láthatóak azokon a modulokon belül, ahol kijelentik. A többi modul nem látható
A dim vagy a privát üzemeltető kijelenti a modul tetején, az eljárásokon kívül
Globális (nyilvános) projektváltozók
A projektmodulok bárhonnan láthatóak
A modul tetején lévő nyilvános üzemeltető kijelenti, az eljárásokon kívül
Mint látható, az első zóna - a legkeskenyebb, a harmadik - a legszélesebb. Példa kód ablak:
Nyilvános a a teljes egészében globális változó
Private b Mint Integer 'A modul helyi változója
Privát Sub Command1_Click ()
Privát c As Integer "Helyi eljárásváltozó
Az első két láthatósági zónával ismerős vagy. A harmadik zónával most megismerkedünk. Így érheti el egy modulból kijelölt globális változókat egy modulból. Hagyja a projektünkben két űrlapot: Form1 és Form2. Itt található az 1. űrlap kódablaka:
Nyilvános a mint egész
Privát Sub Command1_Click ()
A nyilvános operátor a globális (vagy nyilvános) változót deklarálja, amely minden modulból látható. Az űrlap 1 gombjára kattintva a változót 10-es értékhez rendelheti.
Itt van a kódablak a 2. formanyomtatványhoz:
Privát Sub Command1_Click ()
A formanyomtató gombjára kattintva 10 nyomtat - a változó helyes értéke a.
Amint láthatjuk, hogy egy másik modulban bejelentett változó eléréséhez meg kell adni a tulajdonos változóját. A Visual Basic arra használatos, hogy más emberek elemeit meg kell adni, ha a gazdagép nincs megadva, akkor az elem "saját". Próbálkozzunk a Debug helyett. Az Form1.a fájl egyszerűen írja be a Debug parancsot. Mivel a gazdagép nincs megadva, a Visual Basic meg fogja érteni, hogy az a változó "saját", vagyis a 2. formához tartozik. (Semmi sem nem nyilvánítva, a Visual Basic még mindig úgy véli, hogy létezik.) És mivel semmit nem hozzárendel a "saját" , akkor semmi sem lesz kinyomtatva. A lépésenkénti üzemmódban látni fogja, hogy ha az 1-es formában az a értéke 10, akkor a 2. formában az a értéke egyenlő Empt (a = üres) értékkel. Angolul ez azt jelenti, hogy "üres", vagyis nincs érték hozzárendelve a változóhoz.
Tehát, ha azt szeretnénk, hogy a változó látható legyen a projekt egészében, kijelentjük, hogy ez a Nyilvános üzemeltető. Egy ilyen változót globálisnak hívnak. Ha azt szeretnénk, hogy a változó csak a moduljában legyen látható (helyi volt a modulban), azt Dim operátornak deklaráljuk. A Dim operátor helyett szokásos a privát üzemeltető használata. A cselekvés megkülönböztethetetlen, de a magánszó (magántulajdon, bejegyzés tiltása) angol szó jelentése jobban megfelel az ügynek, ezért a programozók többnyire ezt használják.
Eljárási zónák
Az eljárások lehetnek globálisak vagy helyiek
A Visual Basic eljárásaihoz két láthatósági zónát definiálnak:
Helyi modul eljárások
Mindenhol láthatóak azokon a modulokon belül, ahol kijelentik. A többi modul nem látható