I Microsoft Visual Basic er en hændelse en besked sendt af et objekt i et program til hovedprogramsløjfen, der informerer det om, at der er sket noget. Dette "noget" kan variere meget, lige fra en timer der løber ud til et museklik fra brugerens side. Programmet kan fange denne begivenhed og bruge informationen i den til at træffe beslutninger om yderligere operationer.
Eksempler
Visual Basic kommer forudindlæst med en stor mængde forudkodede begivenheder, selvom brugere også kan skrive deres egne. Disse begivenheder dækker næsten alle aspekter af programdrift og interaktion. Nogle hændelser relateret til interaktionen mellem musemarkøren og en kontrol på en formular (såsom en knap) omfatter MouseClick, MouseDoubleClick, MouseEnter, MouseLeave, MouseWheel, MouseMove og Hold musen over. Begivenheder gives generelt meget intuitive navne, for at gøre det nemmere at læse Visual Basic-koden.
Dagens video
Udløser
Begivenheder kan udløses af en lang række situationer. Mange hændelser er resultatet af brugerinteraktion, såsom musebevægelser eller tastaturindtastning. Windows-operativsystemet sender også hændelser og giver programmet besked om, hvornår det er minimeret, eller når et andet vindue overlapper det. Objekter kan sætte deres egne hændelser i gang, når en variabel f.eks. har nået en bestemt værdi. Endelig kan begivenheder sættes i gang ved specifikt at programmere dem til at gøre det ved hjælp af det, der kaldes "raising".
Erklæring
Nye hændelser oprettes ved at bruge en deklarationskommando. Koden til dette ser generelt noget i retning af følgende:
Offentlig begivenhed OptionChanged (ByVal Name As String, ByVal Number Som heltal)
Denne eksempelhændelse skal programmeres manuelt for at blive hævet ved ændring af en indstilling, og ville sende to værdier til programmet: navnet på den ændrede indstilling og den værdi, som den var til sæt.
Hæve begivenheder
At rejse en begivenhed er handlingen at få den til at ske. Dette kan gøres med en enkelt kodelinje placeret i dit program, såsom:
RaiseEvent OptionChanged("Længde", 28)
Dette vil så give programmet besked om, at begivenheden finder sted, og vil sende de indeholdte oplysninger til en behandlerprocedure, hvis en sådan findes.
Håndtere
En handler er en procedure, som programmet kalder, når en bestemt hændelse finder sted. Behandleren kan derefter reagere på informationen, behandle den eller sende information til brugeren. Først skal hændelsen og dens handler forbindes i hånden, så programmet ved, at den ene skal kalde den anden. For at tilføje en handler til vores OptionChanged-begivenhed kræves for eksempel noget som dette:
AddHandler Obj. OptionÆndret, mig adresse. OptionChangedHandler
Hvorefter selve handleren kan tilføjes. En handler for OptionChanged kan være som følger:
Sub OptionChangedHandler (ByVal Name As String, ByVal Number As Integer) MsgBox("Værdien for " & Name. ToString & "er blevet ændret!) End Sub