Applies ToAccess pakalpojumam Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Viena darbība, piemēram, pāriešana no viena vadīkla objektā uz citu vadīklu, var aktivizēt vairākus dažādus notikumus, kas notiek noteiktā secībā. Zināt, kad notikumi notiek un kādā secībā, ir svarīgi, jo tas var ietekmēt to, kā un kad tiek izpildīti makro vai notikumu procedūras. Piemēram, ja pastāv divas notikuma procedūras, kuras jāizpilda noteiktā secībā, jūs vēlaties pārliecināties, vai notikumi, kas saistīti ar šīm procedūrām, notiek tādā pašā secībā.

Tēmas šajā rakstā

Notikumu secība vadīklām formās

Notikumi vadīklām formās notiek, ja pārvietojat fokuss uz vadīklu, kā arī, ja maināt un atjaunināt datus vadīklā.

Piezīme.: Microsoft Office Access rāda notikumu nosaukumus nedaudz atšķirīgi Visual Basic redaktorā nekā rekvizītu lapā un makro veidotājā. Piemēram, notikums ar nosaukumu Fokusējot veidlapas rekvizītu lapā un makro veidotājā tiek dēvēts par GotFocus Visual Basic redaktorā. Šajā rakstā sniegtajos piemēros notikumu nosaukumiem tiek izmantots Visual Basic for Applications (VBA) formāts.

Fokusa pārvietošana uz vadīklu

Pārvietojot fokusu uz vadīklu formā (piemēram, atverot formu, kurā ir viena vai vairākas aktīvas vadīklas, vai pārvietojot fokusu uz citu vadīklu tajā pašā formā), notikumi Enter un GotFocus notiek šādā secībā:

Enter bultiņa GotFocus

Atverot formu, notikumi Ievadīt un GotFocus notiek pēc notikumiem, kas saistīti ar formas atvēršanu (piemēram, Atvērtu, Aktivizēt un Pašreizējais), kā norādīts tālāk.

Open (forma) bultiņaActivate (forma) bultiņaCurrent (forma) bultiņaEnter (vadīkla) bultiņaGotFocus (vadīkla)

Ja fokuss vairs netiek vērsts uz vadīklu formā (piemēram, aizverot formu, kurā ir viena vai vairākas aktīvās vadīklas, vai pārejot uz citu vadīklu tajā pašā formā), notikumi Iziet un LostFocus notiek šādā secībā:

Iziet bultiņa LostFocus

Aizverot formu, notikumi Iziet un LostFocus notiek pirms notikumiem, kas saistīti ar formas aizvēršanu (piemēram, Izlādēt, Deaktivizēt un Aizvērt), kā norādīts tālāk.

Exit (vadīkla) bultiņaLostFocus (vadīkla) bultiņaUnload (forma) bultiņaDeactivate (form) bultiņaClose (forma)

Datu maiņa un atjaunināšana vadīklā

Ja ievadāt vai maināt datus, kas atrodas formas vadīklā, un pēc tam pārvietojiet fokusu uz citu vadīklu, notiek notikumi Pirms atjaunināšanas un Pēc atjaunināšanas:

BeforeUpdate bultiņa Afte rUpdate

Notikumi Iziet un LostFocus vadīklai, kuras vērtība tiek mainīta, notiek pēc notikumiem Pirms atjaunināšanas un Pēc atjaunināšanas:

BeforeUpdate bultiņa AfterUpdate bultiņa Exit bultiņa LostFocus

Ja maināt tekstu tekstlodziņā vai kombinētā lodziņa tekstlodziņa sadaļā, notiek notikums Mainīt. Šis notikums notiek ikreiz, kad mainās vadīklas saturs, taču pirms fokusa pārvietošanas uz citu vadīklu vai ierakstu (un līdz ar to pirms notikumu Pirms atjaunināšanas un Pēc atjaunināšanas notikšanas). Tālāk norādītā notikumu secība notiek katram taustiņam, kas tiek nospiests tekstlodziņā vai kombinētā lodziņa tekstlodziņa sadaļā.

KeyDown bultiņa KeyPress bultiņa Dirty bultiņa Change bultiņa KeyUp

NotikumsNotInList notiek, ja ievadāt vērtību kombinētajā lodziņā, kas nav atrodams kombinēto lodziņu sarakstā, un pēc tam mēģināt pārvietot fokusu uz citu vadīklu vai ierakstu. Notikums NotInList notiek pēc tastatūras notikumiem un izmaiņu notikumiem kombinētajam lodziņam, bet pirms notikumiem jebkurai citai vadīklai vai formai. Ja kombinētā lodziņa rekvizīts LimitToList ir iestatīts kā Jā, kļūdas notikums formai notiek uzreiz pēc notikuma NotInList:

KeyDown bultiņa nospiediet bultiņa Dirty bultiņa mainīt bultiņa KeyUp bultiņa NotInList 0 kļūdu

Uz lapas sākumu

Notikumu secība ierakstiem formās

Notikumi ierakstiem formās notiek, a pārvietojat fokuss uz citu ierakstu, atjauninat datus ierakstā , dzēšat esošu ierakstu vai ierakstus, vai arī izveidojat jaunu ierakstu.

Fokusa pārvietošana uz ierakstu un datu atjaunināšana ierakstos

Pārvietojot fokusu uz esošu ierakstu formā, ievadot vai mainot datus ierakstā un pēc tam pārvietojot fokusu uz citu ierakstu, formai tiek izpildīta šād notikumu secība.

Pašreizējais (forma) bultiņaBeforeUpdate (forma) bultiņaAfterUpdate (forma) bultiņaPašreizējais (forma)

Izejot no ieraksta, kura dati ir mainījušies, bet pirms nākamā ieraksta, atvēršanas fokusā esošajai vadīklai tiek izpildīti notikumi Iziet un LostFocus. Šie notikumi tiek izpildīti pēc formas notikumiem BeforeUpdate un AfterUpdate, kā norādīts tālāk.

BeforeUpdate (forma) bultiņaAfterUpdate (forma) bultiņaExit (vadīkla) bultiņaLostFocus (vadīkla) bultiņaCurrent (forma)

Pārvietojot fokusu starp vadīklām formā, notikumi tiek izpildīti katrai vadīklai. Piemēram, šādas notikumu secības tiek izpildītas, ja veicat tālāk norādītās darbības.

  • Atveriet formu un mainiet datus vadīklā:

    Pašreizējā (forma) bultiņaEnter (vadīkla) bultiņaGotFocus (vadīkla) bultiņaBeforeUpdate (vadīkla) bultiņaAfterUpdate (vadīkla)

  • Fokusa pārvietošana uz citu vadīklu:

    Iziet (vadīkla1) bultiņaLostFocus (vadīkla1) bultiņaEnter (vadīkla2) bultiņaGotFocus (vadīkla2)

  • Fokusa pārvietošana uz citu ierakstu:

    BeforeUpdate (forma) bultiņaAfterUpdate (forma) bultiņaExit (vadīkla2) bultiņaLostFocus (vadīkla2) bultiņaCurrent (forma)

Ierakstu dzēšana

Ja izdzēsīsit kādu ierakstu, formai tiek izpildīti šādi notikumi un Microsoft Office Access parāda dialoglodziņu ar aicinājumu apstiprināt dzēšanu:

Delete bultiņa BeforeDelConfirm bultiņa AfterDelConfirm

Ja atcelsit dzēšanas notikumu, notikumi BeforeDelConfirm un AfterDelConfirm nenotiks un dialoglodziņš netiks parādīts.

Jauna ieraksta izveide

Ja pārvietojat fokusu uz jaunu (tukšu) ierakstu formā un pēc tam izveidojat jaunu ierakstu, ierakstot datus vadīklā, tiek izpildīti notikumi šādā secībā:

Current (forma) bultiņaEnter (vadīkla) bultiņaGotFocus (vadīkla) bultiņaBeforeInsert (forma) bultiņaAfterInsert (forma)

Notikums BeforeInsert (forma) aktivizē, tiklīdz sākat rakstīt vadīklā. Notikums AfterInsert (forma) aktivizē notikumu pēc ieraksta iziešanas.

Notikumi BeforeUpdate un AfterUpdate pēc vadīklām formā un jaunajam ierakstam notiek pēc notikuma BeforeInsert un pirms notikuma AfterInsert.

Uz lapas sākumu

Notikumu secība formām un apakšformām

Notikumi notiek formām, atverot vai aizverot formu, pārvietojieties starp formām vai strādājot ar datiem formā vai apakšformā.

Formas atvēršana un aizvēršana

Ja atverat formu, formai tiek izpildīta tālāk norādītā notikumu secība.

Atvērt bultiņa ielādēt bultiņa izmērus, bultiņa aktivizētu bultiņa pašreizējo

Ja formā nav aktīvu vadīklu, notikums GotFocus formai notiek pēc notikuma Activate, bet pirms notikuma Current.

Ja aizverat formu, formai tiek izpildīta tālāk norādītā notikumu secība.

Izlādēt bultiņa Deaktivizēt bultiņa aizvērt

Ja formā nav aktīvu vadīklu, notikums LostFocus notiek pēc notikuma Unload, bet pirms notikuma Deactivate.

Pārvietošanās no formas uz formu

Pārslēdzoties starp divām atvērtām formām, pirmajai formai tiek izpildīts notikums Deactivate un otrajai formai tiek izpildīts notikums Activate:

Deaktivizēt (forma1) bultiņaAktivizēt (forma2)

Notikums Deaktivizēt formai notiek arī tad, ja pārslēdzaties no formas uz cita objekta cilni programmā Access. Tomēr notikums Deaktivizēt vairs nenotiek, ja pārslēdzaties uz dialoglodziņu formai, kuras rekvizīts PopUp ir iestatīts kā , vai logs citā programmā.

Piezīme.:  Notikums Atvērt nenotiek, ja fokuss tiek pārvietots uz formu, kas jau ir atvērta, pat tad, ja esat pārvietojis fokusu uz šo formu, veicot darbību OpenForm.

Darbs ar datiem formā

Formas un vadīklas notikumi tiek izpildīti, pārvietojoties starp ierakstiem formā un mainot datus. Piemēram, kad pirmo reizi atverat formu, tiek izpildīta tālāk norādītā notikumu secība.

Open (forma) bultiņaLoad (forma) bultiņaResize (forma) bultiņaActivate (forma) bultiņaCurrent (forma) bultiņaEnter (vadīkla)0 GotFocus (vadīkla)

Tāpat, ja aizverat formu, tiek izpildīta tālāk norādītā notikumu secība.

Exit (vadīkla) bultiņaLostFocus (vadīkla) bultiņaUnload (forma) bultiņaDeactivate (forma) bultiņaClose (forma)

Ja esat mainījis datus vadīklā, notikumi BeforeUpdate un AfterUpdate vadīklai un formai notiek pirms notikuma Iziet vadīklai.

Darbs ar apakšformām

Ja atverat formu, kurā ir apakšforma, šī apakšforma un tās ieraksti tiek ielādēti pirms galvenās formas. Tādējādi notikumi apakšformai un tās vadīklām (piemēram, Atvērt, Pašreizējā, Enter, un GotFocus) notiek pirms veidlapas notikumiem. Tomēr notikums Aktivizēt apakšformām netiek izpildīts. Tādēļ galvenās formas atvēršana aktivizē notikumu Aktivizēt tikai galvenajai formai.

Tāpat, ja aizverat formu, kurā ir apakšforma, šī apakšforma un tās ieraksti tiek izlādēti pēc formas. Notikums Deactivate apakšformām netiek izpildīts. Tādēļ galvenās formas aizvēršana aktivizē notikumu Deactivate tikai galvenajai formai. Notikumi vadīklām, formai un apakšformai tiek izpildīti šādā secībā:

  1. Apakšformas vadīklu notikumi (piemēram, Iziet un LostFocus)

  2. Notikumi formas vadīklām (tostarp apakšformas vadīklai)

  3. Notikumu formai (piemēram, Deaktivizēt un Aizvērt)

  4. Notikumi apakšformai

Piezīme.: Tā kā apakšformas notikumi notiek pēc galvenās formas aizvēršanas, konkrēti notikumi, piemēram, galvenās formas aizvēršanas atcelšana no notikuma apakšformā, nenotiks. Šāda veida validācijas pārbaudes, iespējams, var būt nepieciešams pārvietot uz notikumu galvenajā formā.

Uz lapas sākumu

Notikumu secība peles klikšķiem un taustiņsitieniem

Tastatūras notikumi tiek izpildīti formām un vadīklām, nospiežot taustiņus vai nosūtot taustiņsitienus, kamēr formai vai vadīklai ir fokuss. Peles notikumi tiek izpildīti formām, formu sadaļām un vadīklām formās, noklikšķinot ar peles pogām, kamēr peles rādītājs ir uz formas, sadaļas vai vadīklas. Peles notikumi arī notiek, ja pārvietojat peles rādītāju virs formas, sadaļas vai vadīklas.

Tastatūras notikumi

Nospiežot un atlaižot taustiņu, kamēr formas vadīkla atrodas fokusā (vai izmantojot SendKeys darbību vai priekšraksts, lai nosūtītu taustiņsitienu), tiek izpildīta šāda notikumu secība:

KeyDown bultiņa KeyPress bultiņa KeyUp

Nospiežot un atlaižot taustiņu vai nosūtot taustiņsitienu ANSI rakstzīmju kopa, tiek izpildīti visi notikumi KeyDown, KeyPress un KeyUp. Nospiežot un turot ANSI taustiņu, notikumi KeyDown un KeyPress vairākkārt mainās (KeyDown, KeyPress, KeyDown, KeyPress utt.), līdz atlaižat taustiņu; pēc tam tiek izpildīts notikums KeyUp .

Nospiežot un atlaižot taustiņu, kas nav ANSI taustiņš, tiek izpildīti notikumi KeyDown un KeyUp. Nospiežot un turot nospiestu taustiņu, kas nav ANSI, notikums KeyDown tiek izpildīts vairākkārt, līdz atlaižat taustiņu, un pēc tam tiek izpildīts notikums KeyUp.

Ja taustiņa nospiešana vadīklai izraisa citu notikumu, šis notikums tiek izpildīts pēc notikuma KeyPress, bet pirms notikuma KeyUp. Piemēram, ja taustiņsitiens maina tekstu tekstlodziņā, kas izraisa notikumu Mainīt, tiek izpildīta šāda notikumu secība:

KeyDown bultiņa KeyPress bultiņa KeyDown bultiņa KeyUp

Ja taustiņsitiens izraisa fokusa pārvietošanu no vienas vadīklas uz citu vadīklu, notikums KeyDown tiek izpildīts pirmajai vadīklai, savukārt notikumi KeyPress un KeyUp tiek izpildīti otrajai vadīklai. Piemēram, ja maināt datus vadīklā un pēc tam nospiežat taustiņu TAB, lai pārietu uz nākamo vadīklu, tiek izpildīta šāda notikumu secība:

  • Pirmā vadīkla:

    KeyDown bultiņa BeforeUpdate bultiņa AfterUpdate bultiņa Exit bultiņa LostFocus

  • Otrā vadīkla:

    Enter bultiņa GotFocus bultiņa KeyPress bultiņa KeyUp

Peles notikumi

Noklikšķinot un atlaižot peles pogu, kamēr peles rādītājs ir uz formas vadīklas, vadīklai tiek veikta šāda notikumu secība:

MouseDown bultiņa MouseUp bultiņa Click

Ja vadīkla atrodas fokusā un noklikšķināt uz citu vadīklu, lai pārvietotu fokusu uz šo otru vadīklu, tiek veikta šāda notikumu secība:

  • Pirmā vadīkla:

    Iziet bultiņa LostFocus

  • Otrā vadīkla:

    Enter bultiņa GotFocus bultiņa MouseDown bultiņa MouseUp bultiņa Click

Ja pārejat uz citu ierakstu un pēc tam noklikšķināt uz vadīklas, notikums Current formai arī notiek pirms notikuma Enter vadīklai.

Veicot dubultklikšķi uz vadīklas, tiek izraisīta abu notikumu Click un DblClick izpilde. Piemēram, ja veicat dubultklikšķi uz vadīklas, kas nav komandas poga, vadīklai tiek izpildīta šāda notikumu secība:

MouseD own bultiņa MouseUp bultiņa Click bultiņa DblClick bultiņa MouseUp

Ja veicat dubultklikšķi uz komandpogas, tiek izpildīta iepriekšējā notikumu secība, kurai seko otrs notikums Click.

Notikums MouseMove notiek formai, sadaļai vai vadīklai, ja novietojat peles rādītāju virs veidlapas, sadaļas vai vadīklas. Šis notikums ir neatkarīgs no citiem peles notikumiem.

Uz lapas sākumu

Notikumu secība atskaitēm un atskaišu sadaļām

Notikumi tiek izpildīti atskaitēm un atskaišu sadaļām, ja atverat atskaiti, lai to izdrukātu vai priekšskatītu, vai aizverat atskaiti.

Notikumi atskaitēm

Ja atverat atskaiti, lai to drukātu vai priekšskatītu, un pēc tam vēlāk aizveriet atskaiti vai pārvietojiet uz citu objekta cilni programmā Access, atskaitei tiek izpildīta šāda notikumu secība:

Atvērt bultiņa Aktivizēt bultiņa Aizvērt un bultiņa Deaktivizēt

Pārslēdzoties starp divām atvērtām atskaitēm, pirmajai atskaitei tiek izpildīts notikums Deactivate un otrajai atskaitei tiek izpildīts notikums Activate:

Deaktivizēt (report1) bultiņaAktivizēt (report2)

Notikums Deaktivizēt atskaitei notiek arī tad, ja pārslēdzaties no atskaites uz cita objekta cilni programmā Access. Tomēr notikums Deaktivizēt vairs nenotiek, ja pārslēdzaties uz dialoglodziņu formai, kuras rekvizīts PopUp ir iestatīts kā , vai logs citā programmā.

Ja atverat atskaiti, kuras pamatā ir vaicājums, Access aktivizē atvēršanas notikumu atskaitei pirms pamatā esošā vaicājuma izpildes. Tādējādi varat iestatīt kritērijus atskaitei, izmantojot makro vai notikuma procedūru, kas reaģē uz atvēršanas notikumu. Piemēram, makro vai notikuma procedūra var atvērt pielāgotu dialoglodziņu, kurā tiek ievadīti atskaites kritērijiem.

Notikumi atskaišu sadaļām

Drukājot vai priekšskatot atskaiti, formatēšanas un drukāšanas notikumi tiek izpildīti atskaites sadaļām pēc atvēršanas un aktivizēšanas notikumu izpildes un pirms atskaites aizvēršanas vai deaktivizēšanas notikumiem:

Atvērt (atskaite) bultiņa(atskaite) bultiņaFormatēt (atskaites sadaļa) bultiņaDrukāt (atskaites sadaļa) bultiņaAizvērt (atskaite) bultiņaDeaktivizēt (atskaite)

Drošība    Atskaišu skatu var izmantot, lai iespējotu lietotāju atskaišu filtrēšanu. Taču atšķirībā no drukas priekšskatījumaformāta un drukāšanas notikumi jebkurā sadaļā nav sastopami atskaites skatā. Tas attiecas arī uz VBA funkciju rezultātiem un lietotāja definētām procedūrām, kas tiek parādītas vadīklās (piemēram, etiķešu paraksti, attēlojuma statuss, nosacījumformatēšana, vadīklu izmēru maiņa utt.) šajos notikumos. Tāpēc neizmantojiet kodu šajā notikumā, lai formatētu, paslēptu vai izdrukātu konfidenciālus datus, kas var tikt rādīti. Iesakām iepriekš filtrēt datus vai atspējot atskaites priekšskatījumu, iestatot rekvizītu AllowReportView uz Nē.

Turklāt tālāk minētie notikumi var notikt formatēšanas laikā vai pēc tās, bet pirms drukāšanas notikuma:

  • Atgriešanās notikums tiek izpildīts, ja Access atgriežas pie iepriekšējās sadaļas atskaites formatēšanas laikā.

  • Notikums NoData tiek izpildīts, ja atskaitē nav parādīts neviens ieraksts.

  • Lapas notikums tiek izpildīts pēc formatēšanas, bet pirms drukāšanas. Šo notikumu var izmantot, lai pielāgotu drukātās atskaites izskatu.

Uz lapas sākumu

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.

Kopienas palīdz uzdot jautājumus un atbildēt uz tiem, sniegt atsauksmes, kā arī saņemt informāciju no ekspertiem ar bagātīgām zināšanām.