Poradie udalostí pre databázové objekty

Dôležité : Tento článok je strojovo preložený, prečítajte si vyhlásenie. Anglickú verziu tohto článku nájdete tu a môžete ju použiť ako referenciu.

Jednoduchá akcia, napríklad presun z jedného ovládacieho prvku na objekte na iný ovládací prvok, môže spustiť niekoľko rôznych udalostí, ktoré nastanú v určitom poradí. Je dôležité vedieť, kedy udalosti nastanú a v akom poradí, pretože to môže ovplyvniť, ako a kedy sa vaše makrá alebo udalostné procedúry spustia. Ak napríklad existujú dve udalostné procedúry, ktoré majú byť spustené v určitom poradí, chcete sa uistiť, že udalosti, ku ktorým sú priradené, nastanú v rovnakom poradí.

Obsah tohto článku

Poradie udalostí pre ovládacie prvky vo formulároch

Poradie udalostí pre záznamy vo formulároch

Poradie udalostí pre formuláre a podformuláre

Poradie udalostí pre stlačenia klávesov a kliknutia myšou

Poradie udalostí pre zostavy a sekcie zostáv

Poradie udalostí pre ovládacie prvky vo formulároch

Udalosti pre ovládacie prvky vo formulároch nastanú, keď premiestníte zameranie na ovládací prvok, a keď zmeníte a aktualizujete údaje v ovládacom prvku.

Poznámka : Microsoft Office Access zobrazuje názvy udalostí v editore jazyka Visual Basic trochu inak, než to robí v hárku vlastností a v Zostavovači makier. Udalosť s názvom On Got Focus v hárku vlastností formulára a v Zostavovači makier sa napríklad v editore jazyka Visual Basic volá GotFocus. V príkladoch v tomto článku je pre názvy udalostí použitý formát jazyka Visual Basic pre aplikácie (VBA).

Premiestnenie zamerania na ovládací prvok

Pri premiestnení zamerania na ovládací prvok vo formulári (napríklad otvorením formulára, ktorý obsahuje jeden alebo viac aktívnych ovládacích prvkov alebo premiestnením zamerania na iný ovládací prvok v tom istom formulári), nastanú udalosti Enter a GotFocus v tomto poradí:

Enter šípka GotFocus

Ak otvoríte formulár, nastanú udalosti Enter a GotFocus po udalostiach spojených s otvorením formulára (napríklad Open, Activate a Current) v nasledujúcim poradí:

Open (formulár) šípka Activate (formulár) šípka Current (formulár) šípka Enter (ovládací prvok) šípka GotFocus (ovládací prvok)

Pri presune zamerania preč z ovládacieho prvku vo formulári (napríklad pri zatvorení formulára, ktorý obsahuje jeden alebo viac aktívnych ovládacích prvkov alebo premiestnením na iný ovládací prvok v tom istom formulári), nastanú udalosti Exit a GotFocus v tomto poradí:

Exit šípka LostFocus

Pri zatvorení formulára nastanú udalosti Exit a LostFocus pred udalosťami súvisiacimi so zatvorením formulára (napríklad Unload, Deactivate a Close) v nasledujúcom poradí:

Exit (ovládací prvok) šípka LostFocus (ovládací prvok) šípka Unload (formulár) šípka Deactivate (formulár) šípka Close (formulár)

Zmena a aktualizácia údajov v ovládacom prvku

Ak zadáte alebo zmeníte údaje v ovládacom prvku vo formulári a potom premiestníte zameranie na iný ovládací prvok, nastanú udalosti BeforeUpdate a AfterUpdate:

BeforeUpdate šípka AfterUpdate

Udalosti Exit a LostFocus pre ovládací prvok so zmenenou hodnotou nastanú po udalostiach BeforeUpdate a AfterUpdate:

BeforeUpdate šípka AfterUpdate šípka Exit šípka LostFocus

Ak zmeníte text v textovom poli alebo v časti textového poľa v rozbaľovacom poli, nastane udalosť Change. Táto udalosť nastane pri každej zmene obsahu ovládacieho prvku, ale pred premiestnením zamerania na iný ovládací prvok alebo záznam (a teda pred výskytom udalostí BeforeUpdate a AfterUpdate). Nasledujúca postupnosť udalostí sa vyskytne pri každom stlačení klávesu v textovom poli alebo v časti textového poľa v rozbaľovacom poli:

KeyDown šípka KeyPress šípka Dirty šípka Change šípka KeyUp

Udalosť NotInList nastane po tom, čo zadáte hodnotu v rozbaľovacom poli, ktorá nie je v zozname rozbaľovacieho poľa, a potom sa pokúsite presunúť zameranie na ďalší ovládací prvok alebo záznam. Udalosť NotInList nastane po udalostiach klávesnice a udalostiach Change v rozbaľovacom poli, ale pred udalosťami pre iný ovládací prvok alebo formulár. Ak je vlastnosť rozbaľovacieho poľa LimitToList nastavená na hodnotu Yes, udalosť formulára Error nastane hneď po udalosti NotInList:

KeyDown šípka KeyPress šípka Dirty šípka Change šípka KeyUp šípka NotInList šípka Error

Na začiatok stránky

Poradie udalostí pre záznamy vo formulároch

V prípade záznamov vo formulároch nastanú udalosti v situácii , keď premiestníte zameranie na iný záznam, aktualizujete údaje v zázname, odstránite existujúci záznam alebo záznamy prípadne vytvoríte nový záznam.

Presun zamerania na záznamy a aktualizácia údajov v záznamoch

Ak premiestníte zameranie na existujúci záznam vo formulári, zadáte alebo zmeníte údaje v tomto zázname, a potom premiestníte zameranie na ďalší záznam, pre formulári sa vygeneruje nasledujúca postupnosť udalostí :

Current (formulár) šípka BeforeUpdate (formulár) šípka AfterUpdate (formulár) šípka Current (formulár)

Po opustení záznamu, ktorého údaje boli zmenené, ale pred zadaním ďalšieho záznamu, nastanú pre ovládací prvok, ktorý má zameranie, udalosti Exit a LostFocus. Tieto udalosti nastanú po udalostiach pre formulár BeforeUpdate a AfterUpdate v tomto poradí:

BeforeUpdate (formulár) šípka AfterUpdate (formulár) šípka Exit (ovládací prvok) šípka LostFocus (ovládací prvok) šípka RecordExit (formulár) šípka Current (formulár)

Keď presúvate zameranie medzi ovládacími prvkami vo formulári, udalosti nastanú pre každý ovládací prvok. V prípade nasledujúcich akcií napríklad nastane nasledujúca postupnosť udalostí:

  • Otvorenie formulára a zmena údajov v ovládacom prvku:

    Current (formulár) šípka Enter (ovládací prvok) šípka GotFocus (ovládací prvok) šípka BeforeUpdate (ovládací prvok) šípka AfterUpdate (ovládací prvok)

  • Prechod na iný ovládací prvok:

    Exit (ovládací prvok1) šípka LostFocus (ovládací prvok1) šípka Enter (ovládací prvok2) šípka GotFocus (ovládací prvok2)

  • Prechod na iný záznam:

    BeforeUpdate (formulár) šípka AfterUpdate (formulár) šípka Exit (ovládací prvok2) šípka LostFocus (ovládací prvok2) šípka RecordExit (formulár) šípka Current (formulár)

Odstránenie záznamov

Ak odstránite záznam, pre formulár sa vygenerujú nasledujúce udalosti a Microsoft Office Access zobrazí dialógové okno so žiadosťou o potvrdenie odstránenia:

Delete šípka BeforeDelConfirm šípka AfterDelConfirm

Ak udalosť Delete zrušíte, udalosti BeforeDelConfirm a AfterDelConfirm nenastanú a dialógové okno sa nezobrazí.

Vytvorenie nového záznamu

Ak premiestníte zameranie na nový (prázdny) záznam vo formulári a potom vytvoríte nový záznam zadaním údajov do ovládacieho prvku, nastane nasledujúca postupnosť udalostí:

Current (formulár) šípka Enter (ovládací prvok) šípka GotFocus (ovládací prvok) šípka BeforeInsert (formulár) šípka AfterInsert (formulár)

Udalosti BeforeUpdate a AfterUpdate pre ovládacie prvky vo formulári a pre nový záznam nastanú po udalosti BeforeInsert a pred udalosťou AfterInsert.

Na začiatok stránky

Poradie udalostí pre formuláre a podformuláre

V prípade formulára nastanú udalosti, keď otvoríte alebo zatvoríte formulár, premiestníte sa medzi formulármi alebo pracujete s údajmi vo formulári alebo podformulári.

Otvorenie a zatvorenie formulára

Pri otvorení formulára nastane pre formulár nasledujúca postupnosť udalostí:

Open šípka Load šípka Resize šípka Activate šípka Current

Ak neexistujú žiadne aktívne ovládacie prvky vo formulári, udalosť GotFocus pre formulár nastane po výskyte udalosti Activate, ale pred udalosťou Current.

Pri zatvorení formulára pre formulár nastane nasledujúca postupnosť udalostí:

Unload šípka Deactivate šípka Close

Ak vo formulári nie je žiaden aktívny ovládací prvok, pre formulár sa vygeneruje udalosť LostFocus po udalosti Unload, ale pred udalosťou Deactivate.

Presun medzi formulármi

Pri prepínaní medzi dvoma otvorenými formulármi nastane udalosť Deactivate pre prvý formulár a udalosť Activate pre druhý formulár:

Deactivate (formulár1) šípka Activate (formulár2)

Udalosť Deactivate nastane pri formulári aj pri prepnutí z formulára na inú kartu objektu v programe Access. Udalosť Deactivate však nenastane, ak sa prepnete do dialógového okna, do formulára, ktorého vlastnosť PopUp je nastavená na hodnotu Áno alebo do okna v inom programe.

Poznámka :  Udalosť Open sa nevyskytne, ak premiestníte zameranie do formulára, ktorý je už otvorený, ani v prípade, že ste premiestnili zameranie do tohto formulára vykonaním akcie OpenForm.

Práca s údajmi vo formulári

V prípade formulára a ovládacích prvkov nastanú udalosti pri presúvaní medzi záznamami vo formulári a pri zmene údajov. Pri prvom otvorení formulára nastane napríklad nasledujúca postupnosť udalostí:

Open (formulár) šípka Load (formulár) šípka Resize (formulár) šípka Activate (formulár) šípka Current (formulár) šípka Enter (ovládací prvok) šípka GotFocus (ovládací prvok)

Podobne pri zatvorení formulára nastane nasledujúca postupnosť udalostí:

Exit (ovládací prvok) šípka LostFocus (ovládací prvok) šípka Unload (formulár) šípka Deactivate (formulár) šípka Close (formulár)

Ak ste zmenili údaje v ovládacom prvku, nastanú udalosti BeforeUpdate a AfterUpdate pre ovládací prvok aj formulár pred udalosťou Exit pre ovládací prvok.

Práca s podformulármi

Keď otvoríte formulár s podformulárom, podformulár a jeho záznamy sa načítajú pred načítaním hlavného formulára. Znamená to, že udalosti pre podformulár a jeho ovládacie prvky (ako napríklad Open, Current, Enter a GotFocus) nastanú skôr než udalosti pre formulár. Pre podformuláre sa však nevyskytuje udalosť Activate. Z tohto dôvodu otvorenie hlavného formulára spustí udalosť Activate len pre hlavný formulár.

Podobne pri zatvorení formulára, ktorý obsahuje podformulár, je podformulár so svojimi záznamami uvoľnený až hlavnom formulári. Pre podformuláre sa udalosť Deactivate nevyskytuje. Z tohto dôvodu zatvorenie hlavného formulára spustí udalosť Deactivate len pre hlavný formulár. Udalosti pre ovládacie prvky, formulár a podformulár sa vyskytujú v tomto poradí:

  1. Udalosti pre ovládacie prvky podformulára (napríklad Exit a LostFocus)

  2. Udalosti pre ovládacie prvky formulára (vrátane ovládacieho prvku podformulára)

  3. Udalosti pre formulár (napríklad Deactivate a Close)

  4. Udalosti pre podformulár

Poznámka :  Vzhľadom na to, že udalosti pre podformulár sú generované po zatvorení hlavného formulára, určité udalosti sa neuskutočnia (napríklad zrušenie zatvárania hlavného formulára prostredníctvom udalosti z podformulára). Možno budete musieť presunúť tieto typy overovacích testov do udalostí hlavného formulára.

Na začiatok stránky

Poradie udalostí pre stlačenia klávesov a kliknutia myšou

V prípade formulárov a ovládacích prvkov nastávajú udalosti klávesnice počas stlačenia klávesov alebo odosielaní stlačenia klávesov, keď má formulár alebo ovládací prvok zameranie. V prípade formulárov, sekcií alebo v ovládacích prvkov nastávajú udalosti myši v prípade, že kliknete na tlačidlá myši v čase, keď je ukazovateľ myši vo formulári, časti formulára alebo ovládacom prvku. Udalosť myši sa vyskytne aj vtedy, keď premiestníte ukazovateľ myši nad formulár, sekciu alebo ovládací prvok.

Udalosti klávesnice

Ak stlačíte a uvoľníte kláves počas toho, keď ovládací prvok vo formulári má zameranie (alebo použijete akciu SendKeys alebo príkaz na odoslanie stlačenia klávesu), nastane nasledujúca postupnosť udalostí:

KeyDown šípka KeyPress šípka KeyUp

Ak stlačíte a uvoľníte kláves alebo odošlete stlačenie klávesu zo tabuľka znakov ANSI, nastanú všetky tieto udalosti: KeyDown, KeyPress a KeyUp. Ak stlačíte a podržíte stlačený kláves vo formáte ANSI, udalosti KeyDown a KeyPress sa budú opakovane striedať (KeyDown, KeyPress, KeyDown, KeyPress a podobne) dovtedy, kým kláves neuvoľníte. Potom nastane udalosť KeyUp.

Ak stlačíte a uvoľníte kláves, ktorý nie je vo formáte ANSI, udalosti KeyDown a KeyUp nastanú. Ak stlačíte a podržíte stlačený kláves, ktorý nie je vo formáte ANSI, udalosti KeyDown sa vyskytnú opakovane, kým neuvoľníte kláves. Potom nastane udalosť KeyUp.

Ak sa stlačením tlačidla spustí pre ovládací prvok ďalšia udalosť, táto udalosť nastane po udalosti KeyPress, ale pred udalosťou KeyUp. Ak napríklad stlačenie klávesu zmení text v textovom poli, ktoré spúšťa udalosť Change, nastane nasledujúca postupnosť udalostí:

KeyDown šípka KeyPress šípka Change šípka KeyUp

Ak stlačenie klávesu spôsobuje premiestnenie zamerania z jedného ovládacieho prvku na iný ovládací prvok, nastane pre prvý ovládací prvok udalosť KeyDown, zatiaľ čo pre druhý ovládací prvok nastanú udalosti KeyPress a KeyUp. Ak napríklad zmeníte údaje v ovládacom prvku a potom stlačením klávesu TAB sa presuniete na ďalší ovládací prvok, nastane táto postupnosť udalostí:

  • Prvý ovládací prvok:

    KeyDown šípka BeforeUpdate šípka AfterUpdate šípka Exit šípka LostFocus

  • Druhý ovládací prvok:

    Enter šípka GotFocus šípka KeyPress šípka KeyUp

Udalosti myši

Keď kliknete a uvoľníte tlačidlo myši, keď je ukazovateľ myši na ovládacom prvku vo formulári, nastane pre ovládací prvok nasledujúca postupnosť udalostí:

MouseDown šípka MouseUp šípka Click

Ak ovládací prvok má zameranie a vy kliknete na iný ovládací prvok, aby ste premiestnili zameranie na tento druhý ovládací prvok, vyskytne sa táto postupnosť udalostí:

  • Prvý ovládací prvok:

    Exit šípka LostFocus

  • Druhý ovládací prvok:

    Enter šípka GotFocus šípka MouseDown šípka MouseUp šípka Click

Ak sa premiestníte na iný záznam a potom kliknete na ovládací prvok, pred udalosťou Enter pre ovládací prvok nastane aj udalosť Current pre formulár.

Dvojité kliknutie na ovládací prvok spôsobí výskyt udalostí Click a DblClick. Po dvojitom kliknutí na ovládací prvok iný než príkazové tlačidlo napríklad nastane nasledujúca postupnosť udalostí pre ovládací prvok:

MouseD vlastné šípka MouseUp šípka Click šípka DblClick šípka MouseUp

Po dvojitom kliknutí na príkazové tlačidlo nastane predchádzajúca postupnosť udalostí a za ňou nasleduje druhá udalosť Click.

Pre formulár, sekciu alebo ovládací prvok nastane udalosť MouseMove v prípade, že premiestníte ukazovateľ myši nad formulár, sekciu alebo ovládací prvok. Táto udalosť je nezávislá od iných udalostí myši.

Na začiatok stránky

Poradie udalostí pre zostavy a sekcie zostáv

Udalosti pre zostavy a sekcie zostáv sa vyskytnú v prípade, že otvoríte zostavu na tlač alebo zobrazíte jej ukážku alebo zostavu zavriete.

Udalosti pre zostavy

Keď otvoríte zostavy na tlač alebo zobrazíte jej ukážku a neskôr zostavu zavriete alebo ju premiestníte na ďalšiu kartu objektu v Accesse, pre zostavu nastane nasledujúca postupnosť udalostí :

Open šípka Activate šípka Close šípka Deactivate

Pri prepínaní medzi dvoma otvorenými zostavami nastane udalosť Deactivate pre prvú zostavu a udalosť Activate pre druhú zostavu:

Deactivate (zostava1) šípka Activate (zostava2)

Udalosť Deactivate sa pre zostavu vyskytne aj pri prepínaní zo zostavy na inú kartu objektu v Accesse. Udalosť Deactivate však nenastane, ak sa prepnete do dialógového okna, do formulára, ktorého vlastnosť PopUp je nastavená na hodnotu Áno alebo do okna v inom programe.

Keď otvoríte zostavu, ktorá vychádza z dotazu, Access pred spustením príslušného dotazu spúšťa pre zostavu udalosť Open. Výsledkom je, že môžete nastaviť kritériá pre zostavu pomocou makra alebo udalostnej procedúry, ktorá bude zodpovedať udalosti Open. Makro alebo udalostná procedúra môžu napríklad otvoriť vlastné dialógové okno, v ktorom zadáte kritériá zostavy.

Udalosti pre sekcie zostavy

Pri tlači alebo zobrazení ukážky zostavy nastanú pre sekcie zostavy udalosti Format a Print po udalostiach Open a Activate pre zostavu a pred udalosťami Close alebo Deactivate pre zostavu:

Open (zostava) šípka Activate (zostava) šípka Format (sekcia zostavy) šípka Print (sekcia zostavy) šípka Close (zostava) šípka Deactivate (zostava)

Okrem toho počas formátovania alebo po formátovaní môžu vyskytnúť nasledujúce udalosti (ale vždy pred udalosťou Print):

  • Udalosť Retreat nastane v prípade, že Access počas formátovania zostavy prejde naspäť do predchádzajúcej sekcie.

  • Udalosť NoData nastane v prípade, že zostava nezobrazuje žiadne záznamy.

  • Udalosť Page nastane po formátovaní, ale pred tlačou. Túto udalosť môžete použiť na prispôsobenie vzhľadu vytlačenej zostavy.

Na začiatok stránky

Poznámka : Vyhlásenie týkajúce sa strojového prekladu: Tento článok bol preložený počítačovým systémom bez zásahu človeka. Poskytovaním týchto strojových prekladov umožňuje spoločnosť Microsoft aj používateľom, ktorí nehovoria po anglicky, využívať obsah o produktoch, službách a technológiách spoločnosti Microsoft. Článok bol preložený strojovo, môže preto obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky.

Rozšírte svoje zručnosti
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pridajte sa k insiderom pre Office

Boli tieto informácie užitočné?

Ďakujeme za vaše pripomienky!

Ďakujeme vám za pripomienky. Pravdepodobne vám pomôže, ak vás spojíme s pracovníkom podpory pre Office.

×