Microsoft Visual Basicus on sündmus sõnum, mille programmi objekt saadab programmi põhitsüklile, teavitades seda, et midagi on juhtunud. See "miski" võib olla väga erinev, alates taimeri lõppemisest kuni kasutajapoolse hiireklõpsuni. Programm suudab selle sündmuse jäädvustada ja kasutada selles sisalduvat teavet edasiste toimingute kohta otsuste tegemiseks.
Näited
Visual Basic on eelsalvestatud suure hulga eelkodeeritud sündmustega, kuigi kasutajad saavad ka ise kirjutada. Need sündmused hõlmavad peaaegu kõiki programmi toimimise ja suhtluse aspekte. Mõned sündmused, mis on seotud hiirekursori ja vormi juhtelemendi vahelise interaktsiooniga (nt a nuppu) sisaldavad MouseClick, MouseDoubleClick, MouseEnter, MouseLeave, MouseWheel, MouseMove ja MouseHover. Sündmustele antakse üldiselt väga intuitiivsed nimed, et hõlbustada Visual Basicu koodi lugemist.
Päeva video
Käivitamine
Sündmusi võib käivitada suur hulk olukordi. Paljud sündmused on kasutaja interaktsiooni tulemus, näiteks hiire liigutamine või klaviatuuri sisestamine. Windowsi operatsioonisüsteem saadab ka sündmusi, teavitades programmi, kui see on minimeeritud või kui mõni muu aken sellega kattub. Objektid võivad näiteks käivitada oma sündmused, kui muutuja on saavutanud teatud väärtuse. Lõpuks saab sündmusi käivitada, programmeerides need spetsiaalselt seda tegema, nn tõstmise abil.
Deklaratsioon
Uued sündmused luuakse deklaratsioonikäsuga. Selle kood näeb üldiselt välja umbes selline:
Avaliku sündmuse suvandMuudetud (ByVal nimi stringina, ByVal number täisarvuna)
See näidissündmus tuleb käsitsi programmeerida, et seda suvandi muutmisel esile kutsuda, ja saadaks programmile kaks väärtust: suvandi nimi muudeti ja väärtus, millele see oli seatud.
Sündmuste tõstmine
Sündmuse esilekutsumine on selle toimumise tegu. Seda saab teha teie programmi sisestatud ühe koodireaga, näiteks:
RaiseEvent OptionChanged("Pikkus", 28)
Seejärel teavitab see programmi sündmuse toimumisest ja saadab sisalduva teabe käitleja protseduurile, kui see on olemas.
Käitlejad
Käsitleja on protseduur, mida programm konkreetse sündmuse toimumisel kutsub. Seejärel saab käitleja teabele reageerida, seda töödelda või kasutajale teavet saata. Esmalt tuleb sündmus ja selle töötleja käsitsi seostada, et programm teaks, et üks peaks teisele kutsuma. Näiteks meie OptionChanged sündmusele töötleja lisamiseks on vaja midagi sellist:
AddHandler Obj. OptionChanged, AddressOf Me. OptionChangedHandler
Pärast mida saab lisada käitleja enda. OptionChangedi töötleja võib olla järgmine:
Sub OptionChangedHandler (ByVal nimi stringina, ByVal number täisarvuna) MsgBox("Väärtus " & Name. ToString & "on muudetud!) End Sub