Definisjon av hendelser i Visual Basic

I Microsoft Visual Basic, er en hendelse en melding sendt av et objekt i et program til hovedprogrammet loop, informere det at noe har skjedd. Dette "noe" kan variere mye, fra en timer å kjøre ut til et museklikk på den delen av brukeren. Programmet kan fange denne hendelsen og bruke informasjonen i den for å ta beslutninger om videre drift.

eksempler

Visual Basic leveres med en enorm mengde precoded hendelser, men brukere kan også skrive sine egne. Disse hendelsene dekker nesten alle aspekter av programmet drift og samhandling. Noen hendelser knyttet til samspillet mellom musepekeren og en kontroll på et skjema (for eksempel en knapp) inkluderer museklikk, MouseDoubleClick, MouseEnter, MouseLeave, musehjul, mousemove og MouseHover. Hendelser blir vanligvis gitt svært intuitive navn, for å gjøre lesing Visual Basic-kode enklere.

utløsende

Hendelser kan utløses av en lang rekke situasjoner. Mange arrangementer er et resultat av brukermedvirkning, for eksempel musebevegelsen eller tastaturet. Windows-operativsystemet sender også hendelser, varsler programmet om når det er minimert eller når et annet vindu overlapper det. Objekter kan sette av egne arrangementer, når en variabel har nådd en viss verdi, for eksempel. Endelig kan hendelser settes i bevegelse ved spesifikt å programmere dem til å gjøre det, ved hjelp av det som kalles "oppdra".

Erklæring

Nye hendelser er opprettet ved hjelp av en erklæring kommando. Koden for dette vanligvis ser omtrent slik ut det som følger:

Offentlig arrangement OptionChanged (ByVal navn As String, ByVal Antall As Integer)

Dette eksempelet hendelsen måtte manuelt programmert til å bli hevet ved endring av en opsjon, og ville sende to verdier til programmet: navnet på alternativet endres og verdien til den ble satt.

Raising Hendelser

Raising en hendelse er det lov til å forårsake at det skal skje. Dette kan gjøres med en eneste linje med kode plasseres i programmet, for eksempel:

RaiseEvent OptionChanged ( "Length", 28)

Dette vil da gi beskjed programmet for arrangementet finner sted, og vil sende informasjonen til et behandlingsprogram prosedyre, hvis det finnes.

handlers

En hundefører er en prosedyre som programmet kaller når en bestemt hendelse finner sted. Den handler kan da reagere på informasjon, behandle den eller sende informasjon til brukeren. Først hendelsen og dens handler må være knyttet hånd, slik at programmet vet at man skal kalle den andre. For eksempel vil legge til et behandlingsprogram til vår OptionChanged hendelse, er noe sånt som dette kreves:

AddHandler Obj.OptionChanged, AddressOf Me.OptionChangedHandler

Etter som føreren selv kan legges. En hundefører for OptionChanged kan være som følger:

Sub OptionChangedHandler (ByVal navn As String, ByVal Antall As Integer)

MsgBox("The value for " & Name.ToString & "has been changed!)

End Sub