Hjem Personlig finansiering Forståelse Scope i Visual Basic. NET - dummies

Forståelse Scope i Visual Basic. NET - dummies

Indholdsfortegnelse:

Video: Endocrine System, Part 1 - Glands & Hormones: Crash Course A&P #23 2025

Video: Endocrine System, Part 1 - Glands & Hormones: Crash Course A&P #23 2025
Anonim

VB. NET-programmer er opdelt i zoner, ligesom USA er opdelt i stater, amter og byer. Ligesom retshåndhævende agenter har forskellige størrelser af jurisdiktioner (byens politiet, statsborgerne og FBI, som kan gå overalt), VB. NET programmeringslinjer har indflydelsesområder. Denne indflydelsesområde, kaldet scope, , gælder hovedsagelig for variabler (men kan også gælde for procedurer - subs og funktioner - samt hele klasser).

Adgang til en variabel

Ofte vil du spørge eller ændre værdien i en variabel, men om denne variabel er tilgængelig for dig, afhænger af dens anvendelsesområde. For eksempel kan du altid få adgang til en variabel fra samme procedure (funktioner, underrutiner og begivenheder er alle procedurer).

For at se, hvordan dette virker, skriv følgende i dit kode modul:

Privat Subform1_Load (ByVal afsender som system. Object, ByVal e As System. EventArgs) Håndterer MyBase. Indlæs

Dim N As String = "Denne"

MsgBox (N)

Slutdel

Tryk på F5 og bemærk, at MsgBox ikke har noget problem med at vise værdien af ​​variabelen N.

Den viser Dette. Indtast nu en anden under lige under Form1_Load-under i kodevinduet:

Offentlig subprøve ()

MsgBox (N)

Afslutningsdel

Bemærk, at der er en sawtooth line under variablen N i TryIt sub. Hold musemarkøren oven på savtlinjen og VB. NET viser en fejlmeddelelse, der fortæller dig, at navn 'N' ikke er angivet.

Denne fejlmeddelelse betyder, at alle linjer af kode i TryIt-suben (mellem Public Sub og End Sub) ikke kan læse (adgang) eller skrive (ændre) variablen N. N blev erklæret (med Dim kommando) i en separat procedure, og så er omfanget af N (dets tilgængelighed) begrænset til linjer med kode inden for samme procedure.

Selv om Dim er den mest almindeligt anvendte, kan du bruge syv yderligere erklæringskommandoer: Statisk, Offentlig, Beskyttet, Ven, Delt, Beskyttet Ven og Privat. Disse ekstra kommandoer angiver omfang (fra hvilke steder i dit program kan en variabel fås).

Bemærk, at når du erklærer en variabel i en procedure, fungerer variablen kun inden for den procedure. Når programmet udfører proceduren (eller hændelsen), kommer variablen til live, gør dens ting, og dør derefter (forsvinder), så snart slutlinjen udføres.

Når variabler er lokale

Variabler, der kun lever i en enkelt procedure, kaldes lokale variabler. Lokale variabler har to kvaliteter, som du skal huske:

  • Ingen programmering uden for deres egen procedure kan interagere med dem, enten for at læse deres værdi eller for at ændre deres værdi. Deres omfang er begrænset til deres egen procedure.
  • Når VB slutter at udføre proceduren, hvor de bor, fordampes deres værdi. Hvis denne procedure udføres en anden gang, er den værdi, som den lokale variabel en gang indeholdt, ikke længere der. En udførelse af proceduren er deres levetid.
  • Der er nogle situationer, hvor du vil have en lokal variables værdi, der skal bevares. I disse tilfælde bruger du den statiske kommando i stedet for kommandoen Dim:

Privat Sub Form1_Load (ByVal-afsender Som System. Objekt, ByVal e Som System. EventArgs) Håndterer MyBase. Load

Dim n Som Integer

Statisk x Som Integer

Slut Sub

I dette eksempel taber variablen N sin værdi, når End Sub udføres. Imidlertid beholder variablen x dens værdi, indtil programmet lukkes. En anden måde at sætte det på er dette: Når du bruger den statiske kommando med en lokal variabel, bevares værdien af ​​denne variabel i hele applikationens levetid. (Livstiden betyder, hvor længe der findes noget i et program.)

Hvad tror du ville ske, hvis du lægger to kommandoknapper på din formular, og så løb du programmet og klikede på Command1 først og derefter klikede på Command2 i dette næste program?

Privat Sub Button1_Click (ByVal afsender Som System. Objekt, ByVal e Som System. EventArgs) Håndterer Button1. Klik

Dim X Som Integer

X = X + 5

Slut Sub

Privat Sub Button2_Click (ByVal Afsender Som System. Object, ByVal e Som System. EventArgs) Håndterer Button2. Klik på

Dim X som helhed

MsgBox (X)

Slutdel

Meddelelsesboksen viser ingenting. Variablen X i Command1's klikhændelse er en helt anden variabel fra X i Command2s klikhændelse. De er lokale og har simpelthen ikke noget forhold til hinanden, ikke mere end to fremmede ved navn Mike, som tilfældigvis bor i Bronx og aldrig mødes.

Men hvad hvis du vil have begge disse procedurer til at få adgang til og manipulere den samme variabel? For at gøre dette definerer du variablen uden for dine procedurer. Prøv det. Klik lige over din første procedure (lige over linjen Private Sub Form1_Load) i kodevinduet for at flytte indsætningsmarkøren der.

Indtast nu følgende:

Dim x As Integer

Det er her, du vil sætte nogle variabler, som du ønsker at give form-wide scope - med andre ord at tillade alle procedurer i den formular (Form1, i dette tilfælde) for at kunne læse og ændre variablen. (Det område, hvor du anvender formelle variabler, blev tidligere kaldt General Declarations-området, før VB. NET.)

Nu, med den X-variabel Dimmet deroppe (udenfor) alle delene og andre procedurer, når du kører det samme program, klik på Command1, og klik derefter på Command2, du ser resultatet, du vil se: nummeret 17. Når du erklærer X for at være bredt udformet, kan de to knapper få adgang til variablen X.Slet de to Dim-sætninger, der tidligere erklærede X inden for de to knaphændelser. Nu refererer X = X + 5 og MsgBox (X) begge til den samme variabel, der hedder X.

Når en variabel har form-wide scope, er den så tilgængelig for alle procedurer i den form. Det er imidlertid ikke tilgængeligt for procedurerne i andre former i projektet.

Forståelse Scope i Visual Basic. NET - dummies

Valg af editor

Hvordan man skriver en check for en fremragende bill i QuickBooks Online - dummies

Hvordan man skriver en check for en fremragende bill i QuickBooks Online - dummies

Du kan Brug QuickBooks Online (QBO) Check vinduet til at skrive en check for at betale et faktura, du tidligere indtastede - noget, du ikke kan gøre i QuickBooks desktop produkt. Brug ikke Check-transaktionen, hvis du planlægger at betale flere regninger. Hvis du vælger en betalingsmodtager, for hvem der foreligger en udestående faktura, QBO ...

Sådan afskrives fakturaer med QuickBooks Online Accountant - dummies

Sådan afskrives fakturaer med QuickBooks Online Accountant - dummies

Vælger skrivefakturaer fra revisionsværktøjerne menuen i QBOA viser siden Skriv ud fakturaer, som giver dig mulighed for at se fakturaer, du måske vil afskrive, og derefter skrive dem til en konto efter eget valg. Øverst på siden indstiller du filtre for at få vist de fakturaer, du vil have ...

Importrevisorens ændringer til QuickBooks 2012 Datafil - dummies

Importrevisorens ændringer til QuickBooks 2012 Datafil - dummies

Din klient importerer de ændringer, som du ' har lavet i revisorens kopi af QuickBooks 2012-datafilen i hendes arbejdskopi af datafilen. For at gøre dette vælger klienten filen Arkiv → Revisorens Kopi → Klientaktiviteter → Kommandoen Import Revisorens Ændringer. QuickBooks viser dialogboksen Importer regnskabsførerens ændringer. For at bruge importkontoens ændringer ...

Valg af editor

Brug Flash med Nature Photography - dummies

Brug Flash med Nature Photography - dummies

Som regel afhænger du af naturlig belysning til naturfotografering. Du kan dog bruge flash-flash eller en ekstra flash-enhed til at øge naturlig belysning. On-flash-kamera De fleste digitale kameraer leveres med en flash på kameraet. Blitzenheden springer op, når det er nødvendigt. Du kan også aktivere flash på kameraet, når du skal tilføje en ...

Brug tredjeparts rå software til HDR fotografi - dummies

Brug tredjeparts rå software til HDR fotografi - dummies

Du kan købe eller downloade et væld af Råredigerere og konvertere fra tredjepart, der hjælper dig med at lave billeder med høj dynamisk rækkevidde. Hvis du er utilfreds med din nuværende software og vil prøve noget nyt, skal du hænde på en eller flere af de programmer, der er angivet i tabellen. Rå redaktører fra tredjepart Navn URL Platform (er) Freeware? ...

Brug dekorative accenter i mad stil og madfotografi - dummies

Brug dekorative accenter i mad stil og madfotografi - dummies

Når fødevaren alene ikke skaber Det drama eller den intrigue, du vil have i din fotografering med dekorative accenter - af farve, form eller tekstur - kan give dine billeder den ekstra effekt, du leder efter. Accenter er forbedringer af fødevarematerialet, og selvom de tjener formålet med at ophæve maden, er de ...

Valg af editor

Sådan finder du formatering i Word 2007 - dummies

Sådan finder du formatering i Word 2007 - dummies

Du kan bruge kommandoen Find til at skure dit Word 2007-dokument til formatering af oplysninger. Hvis du f.eks. Kun vil finde de forekomster af ordet, der ligger i fed skrift, kan du gøre det. Dette eksempel søger efter teksten gåseæg med en skriftstørrelse på 24 point i en ...

Hvordan man finder tekst i Word 2016 - dummies

Hvordan man finder tekst i Word 2016 - dummies

Ikke gider med båndet! For at finde tekst i dit Word 2016-dokument, tryk Ctrl + F, den mindeværdige tastaturgenvej til kommandoen Find. Du ser navigationsruden, svarende til hvad der vises her. Navigationsruden. Skriv den tekst, du vil lokalisere, i feltet Søg dokument. Når du skriver forekomster af teksten ...

Hvordan man finder stilarter i Word 2016 - dummies

Hvordan man finder stilarter i Word 2016 - dummies

Stilarter bor på Word 2016 Home-fanen navngivet Styles-gruppe, som vist her. Hvad du ser på båndet er Style Gallery, som kan udvides til en fuld menu med stilvalg. Hvor Word-stilarter lurer. Klik på dialogboksen launcher i det nederste højre hjørne af Styles-gruppen ...