Definisjon av hendelser i Visual Basic

I Microsoft Visual Basic er en hendelse en melding sendt av et objekt i et program til hovedprogramsløyfen, som informerer om at noe har skjedd. Dette "noe" kan variere mye, fra en tidtaker som går tom til et museklikk fra brukerens side. Programmet kan fange opp denne hendelsen og bruke informasjonen i den til å ta beslutninger om videre operasjoner.

Eksempler

Visual Basic leveres forhåndslastet med et stort antall forhåndskodede hendelser, men brukere kan også skrive sine egne. Disse hendelsene dekker nesten alle aspekter av programdrift og interaksjon. Noen hendelser relatert til interaksjonen mellom musepekeren og en kontroll på et skjema (som f.eks knapp) inkluderer MouseClick, MouseDoubleClick, MouseEnter, MouseLeave, MouseWheel, MouseMove og Hold musepekeren. Begivenheter er generelt gitt svært intuitive navn, for å gjøre lesingen av Visual Basic-koden enklere.

Dagens video

Utløsende

Hendelser kan utløses av et stort antall situasjoner. Mange hendelser er et resultat av brukerinteraksjon, for eksempel musebevegelser eller tastaturinntasting. Windows-operativsystemet sender også hendelser, og varsler programmet om når det er minimert eller når et annet vindu overlapper det. Objekter kan sette i gang sine egne hendelser, for eksempel når en variabel har nådd en viss verdi. Til slutt kan hendelser settes i gang ved å spesifikt programmere dem til å gjøre det, ved hjelp av det som kalles «raising».

Erklæring

Nye hendelser opprettes ved å bruke en deklarasjonskommando. Koden for dette ser generelt omtrent slik ut som følger:

Offentlig hendelsesalternativ endret (ByVal Name As String, ByVal Number Som heltall)

Denne eksempelhendelsen må programmeres manuelt for å bli hevet ved endring av et alternativ, og ville sende to verdier til programmet: navnet på alternativet endret og verdien det var til sett.

Heve arrangementer

Å reise en hendelse er handlingen for å få den til å skje. Dette kan gjøres med en enkelt kodelinje plassert i programmet ditt, for eksempel:

RaiseEvent OptionChanged("Length", 28)

Dette vil da varsle programmet om at hendelsen finner sted, og vil sende informasjonen til en behandlerprosedyre, hvis en finnes.

Håndtere

En behandler er en prosedyre som programmet kaller når en spesifikk hendelse finner sted. Behandleren kan da reagere på informasjonen, behandle den eller sende informasjon til brukeren. Først må hendelsen og dens behandler assosieres for hånd, slik at programmet vet at den ene skal ringe den andre. For å legge til en behandler til OptionChanged-hendelsen vår, kreves for eksempel noe slikt:

AddHandler Obj. AlternativEndret, AddressOf Me. OptionChangedHandler

Deretter kan selve behandleren legges til. En behandler for OptionChanged kan være som følger:

Sub OptionChangedHandler (ByVal Name As String, ByVal Number As Integer) MsgBox("Verdien for " & Name. ToString & "har blitt endret!) End Sub