Veritabanı nesneleri için olay sırası

Önemli : Bu makale makine çevisidir. Bkz. yasal uyarı. Bu makalenin İngilizce sürümüne buradan ulaşabilirsiniz.

Tek bir eylem, örneğin nesnede bir denetimden başka bir denetime geçme eylemi belirli bir sırada gerçekleşen birkaç farklı olayı tetikleyebilir. Olayların ne zaman ve hangi sırayla gerçekleştiğini bilmek önemlidir, çünkü bu makrolarınızın ve olay yordamlarınızın nasıl ve ne zaman çalıştırılacağını etkileyebilir. Örneğin, belirli bir sırada çalıştırılması gereken iki olay yordamı varsa, bunların ilişkilendirildiği olayların aynı sırada gerçekleştiğinden emin olmak istersiniz.

Bu makalede

Formlardaki denetimler için olayların sırası

Formlardaki kayıtlar için olayların sırası

Formlar ve alt formlar için olayların sırası

Tuş vuruşları ve fare tıklamaları için olayların sırası

Raporlar ve rapor bölümleri için olayların sırası

Formlardaki denetimler için olayların sırası

Odağı bir denetime taşıdığınızda ve denetimdeki verileri değiştirdiğinizde ve güncelleştirdiğinizde, formlardaki denetimler için olaylar gerçekleştir.

Not : Microsoft Office Access, Visual Basic Düzenleyicisi'nde olay adlarını özellik sayfasında ve Makro Oluşturucusu'nda gösterdiğinden biraz farklı gösterir. Örneğin, formun özellik sayfasında ve Makro Oluşturucusu'nda Odaklanıldığında adlı olay, Visual Basic Düzenleyicisi'nde GotFocus olarak adlandırılır. Bu makaledeki örneklerde olay adları için Visual Basic for Applications (VBA) biçimi kullanılmıştır.

Odağı bir denetime taşıma

Odağı formdaki bir denetime taşıdığınızda (örneğin, bir veya birden çok etkin denetim içeren bir formu açarak veya odağı aynı formda başka bir denetime taşıyarak), Enter ve GotFocus olayları şu sırayla gerçekleşir:

Enter ok GotFocus

Formu açtığınızda, form açma işlemiyle ilişkilendirilmiş olaylardan (Open, Activate ve Current gibi) sonra Enter ve GotFocus olayları şu şekilde gerçekleşir:

Open (form) ok Activate (form) ok Current (form) ok Enter (denetim) ok GotFocus (denetim)

Odak formdaki bir denetimden ayrıldığında (örneğin, bir veya birden çok etkin denetim içeren bir formu kapattığınızda veya aynı form üzerinde başka bir denetime geçtiğinizde, Exit ve LostFocus olayları şu sırayla gerçekleşir:

Exit ok LostFocus

Formu kapattığınızda, form kapatma işlemiyle ilişkilendirilmiş olaylardan (Unload, Deactivate ve Close gibi) sonra Exit ve LostFocus olayları şu şekilde gerçekleşir:

Exit (denetim) ok LostFocus (denetim) ok Unload (form) ok Deactivate (form) ok Close (form)

Denetimdeki verileri değiştirme ve güncelleştirme

Formdaki bir denetime veri girdiğinizde veya verilerini değiştirdiğinizde ve ardından odağı başka bir denetime taşıdığınızda, BeforeUpdate ve AfterUpdate olayları gerçekleşir:

BeforeUpdate ok AfterUpdate

BeforeUpdate ve AfterUpdate olaylarından sonra, değeri değişen denetim için Exit ve LostFocus olayları gerçekleşir:

BeforeUpdate ok AfterUpdate ok Exit ok LostFocus

Metin kutusundaki veya birleşik giriş kutusunun metin kutusu bölümündeki metni değiştirdiğinizde, Change olayı gerçekleşir. Denetimin içeri her değiştiğinde, ama siz odağı farklı bir denetim veya kayda taşımadan önce (dolayısıyla, BeforeUpdate ve AfterUpdate olayları gerçekleşmeden önce) bu olay gerçekleşir. Metin kutusunda veya birleşik giriş kutusunun metin kutusu bölümünde bastığınız her tuş için aşağıdaki olay sırası gerçekleşir:

KeyDown ok KeyPress ok Dirty ok Change ok KeyUp

Birleşik giriş kutusuna birleşik giriş kutusu listesinde bulunmayan bir değer girdiğinizde ve ardından odağı başka bir denetime veya kayda taşımaya çalıştığınızda, NotInList olayı gerçekleşir. NotInList olayı, klavye olaylarından ve birleşik giriş kutusu için Change olaylarından sonra ancak diğer herhangi bir denetim veya formun olaylarından önce gerçekleşir. Birleşik giriş kutusunun LimitToList özelliği Yes olarak ayarlandıysa, formun Error olayı, NotInList olayından hemen sonra gerçekleşir:

KeyDown ok KeyPress ok Dirty ok Change ok KeyUp ok NotInList ok Error

Sayfanın Başı

Formlardaki kayıtlar için olayların sırası

Formlardaki kayıtların olayları, odağı başka bir kayda taşıdığınızda, kayıttaki verileri güncelleştirdiğinizde, var olan kaydı veya kayıtları sildiğinizde ya da yeni kayıt oluşturduğunuzda gerçekleşir.

Odağı kayıtlara taşıma ve kayıtlardaki verileri güncelleştirme

Odağı formda var olan bir kayda taşıdığınızda, kayıtta verileri girdiğinizde veya değiştirdiğinizde ve ardından odağı başka bir kayda taşıdığınızda, form için aşağıdaki olay dizisi gerçekleşir:

Current (form) ok BeforeUpdate (form) ok AfterUpdate (form) ok Current (form)

Verileri değiştirilmiş olan kayıttan çıktığınızda ama bir sonraki kayda girmeden önce, odağın bulunduğu denetim için Exit ve LostFocus olayları gerçekleşir. Bu olaylar, form için BeforeUpdate ve AfterUpdate olaylarından sonra aşağıdaki gibi gerçekleşir:

BeforeUpdate (form) ok AfterUpdate (form) ok Exit (denetim) ok LostFocus (denetim) ok RecordExit (form) ok Current (form)

Siz odağı formdaki denetimler arasında taşırken, her denetim için olaylar gerçekleşir. Örneğin, aşağıdakileri yaptığınızda şu olay dizisi gerçekleşir:

  • Formu açma ve denetimdeki verileri değiştirme:

    Current (form) ok Enter (denetim) ok GotFocus (denetim) ok BeforeUpdate (denetim) ok AfterUpdate (denetim)

  • Odağı başka bir denetime taşıma:

    Exit (denetim1) ok LostFocus (denetim1) ok Enter (denetim2) ok GotFocus (denetim2)

  • Odağı başka bir kayda taşıma:

    BeforeUpdate (form) ok AfterUpdate (form) ok Exit (denetim2) ok LostFocus (denetim2) ok RecordExit (form) ok Current (form)

Kayıtları silme

Kaydı sildiğinizde form için aşağıdaki olaylar gerçekleşir ve Microsoft Office Access silme işlemini onaylamanızı isteyen bir iletişim kutusu görüntüler:

Delete ok BeforeDelConfirm ok AfterDelConfirm

Delete olayını iptal ederseniz, BeforeDelConfirm ve AfterDelConfirm olayları gerçekleşmez ve iletişim kutusu görüntülenmez.

Yeni kayıt oluşturma

Odağı form üzerinde yeni (boş) bir kayda taşıdığınızda ve ardından bir denetime veri yazarak yeni kayıt oluşturduğunuzda, aşağıdaki olay dizisi gerçekleşir:

Current (form) ok Enter (denetim) ok GotFocus (denetim) ok BeforeInsert (form) ok AfterInsert (form)

BeforeInsert olayından sonra ve AfterInsert olayından önce, formdaki denetimler için ve yeni kayıt için BeforeUpdate ve AfterUpdate olayları gerçekleşir.

Sayfanın Başı

Formlar ve alt formlar için olayların sırası

Bir formu açtığınızda veya kapattığınızda, formlar arasında geçiş yaptığınızda ya da formdaki veya alt formdaki verilerle çalıştığınızda, formlar için olaylar gerçekleşir.

Formu açma ve kapatma

Formu açtığınızda, form için aşağıdaki olay dizisi gerçekleştir:

Open ok Load ok Resize ok Activate ok Current

Form üzerinde hiç etkin denetim yoksa, Activate olayından sonra ama Current olayından önce form için GotFocus olayı gerçekleşir.

Formu kapattığınızda, form için aşağıdaki olay dizisi gerçekleştir:

Unload ok Deactivate ok Close

Form üzerinde hiç etkin denetim yoksa, Unload olayından sonra ama Deactivate olayından önce form için LostFocus olayı gerçekleşir.

Formlar arasında geçiş yapma

İki form arasında geçiş yaptığınızda, ilk form için Deactivate olayı ve ikinci form için de Activate olayı gerçekleşir:

Deactivate (form1) ok Activate (form2)

Formdan Access'teki başka bir nesne sekmesine geçtiğinizde de form için Deactivate olayı gerçekleşir. Öte yandan, bir iletişim kutusuna, PopUp özelliği Yes olarak ayarlanmış bir forma veya başka bir programın penceresine geçtiğinizde, Deactivate olayı gerçekleşmez.

Not :  Odağı zaten açık olan bir forma taşırsanız, odağı bu forma taşırken OpenForm eylemini kullanmış olsanız bile, Open olayı gerçekleşmez.

Formdaki verilerle çalışma

Formdaki kayıtlar arasında geçiş yaptığınızda ve verileri değiştirdiğinizde, form ve denetim olayları gerçekleşir. Örneğin, formu ilk kez açtığınızda aşağıdaki olay dizisi gerçekleştir:

Open (form) ok Load (form) ok Resize (form) ok Activate (form) ok Current (form) ok Enter (denetim) ok GotFocus (denetim)

Benzer şekilde, formu kapattığınızda aşağıdaki olay dizisi gerçekleştir:

Exit (denetim) ok LostFocus (denetim) ok Unload (form) ok Deactivate (form) ok Close (form)

Denetimdeki verileri değiştirdiyseniz, denetim için Exit olayından önce hem denetim hem de form için BeforeUpdate ve AfterUpdate olayları gerçekleşir.

Alt formlarla çalışma

Alt form içeren bir formu açtığınızda, ana formdan önce alt form ve onun kayıtları yüklenir. Dolayısıyla, alt form ve onun denetimleri için olaylar (Open, Current, Enter ve GotFocus gibi), form için olan olaylardan önce gerçekleşir. Öte yandan, alt formlar için Activate olayı gerçekleşmez. Bu nedenle, ana formun açılması yalnızca ana form için Activate olayını tetikler.

Benzer biçimde, alt form içeren bir formu kapattığınızda, alt form ve onun kayıtlarının yüklemesi, ana formdan sonra kaldırılır. Alt formlar için Deactivate olayı gerçekleşmez. Bu nedenle, ana formun kapatılması yalnızca ana form için Deactivate olayını tetikler. Denetimler, form ve alt form için olaylar şu sırada gerçekleşir:

  1. Alt formun denetimleri için olaylar (Exit ve LostFocus gibi)

  2. Formun denetimleri için olaylar (alt form denetimi de içinde)

  3. Form için olaylar (Deactivate ve Close gibi)

  4. Alt form için olaylar

Not :  Alt form için olaylar ana form kapatıldıktan sonra gerçekleştiğinden, bir alt form olayından ana formu kapatma işlemini iptal etme gibi bazı olaylar gerçekleşmez. Bu tür doğrulama testlerini ana formdaki bir olaya taşımanız gerekir.

Sayfanın Başı

Tuş vuruşları ve fare tıklamaları için olayların sırası

Odak formda veya denetimdeyken tuşlara bastığınızda veya tuş vuruşları gönderdiğinizde klavye olayları gerçekleşir. Fare işaretçisi bir form, bölüm veya denetimdeyken fare düğmelerine tıkladığınızda, formlar, form bölümleri ve denetimler için fare olayları gerçekleşir. Fare işaretçisini form, bölüm veya denetim üzerinde taşıdığınızda da fare olayları gerçekleşir.

Klavye olayları

Odak formdaki bir denetimin üzerindeyken bir tuşa basıp bırakırsanız (veya tuş vuruşu göndermek için SendKeys eylemi veya deyim kullanırsanız), aşağıdaki olay dizisi gerçekleşir:

KeyDown ok KeyPress ok KeyUp

ANSI karakter kümesinde bir tuşa basıp bıraktığınızda veya bir tuş vuruşu gönderdiğinizde, KeyDown, KeyPress ve KeyUp olaylarının tümü gerçekleşir. Bir ANSI tuşuna basıp basılı tutarsanız, siz tuşu bırakana kadar birbiri ardından KeyDown ve KeyPress olayları tekrar tekrar gerçekleşir (KeyDown, KeyPress, KeyDown, KeyPress, vb.); sonra da KeyUp olayı gerçekleşir.

ANSI dışında bir tuşa basıp bırakırsanız, KeyDown ve KeyUp olayları gerçekleşir. ANSI dışında bir tuşa basıp basılı tutarsanız, siz tuşu bırakana kadar tekrar tekrar KeyDown olayı gerçekleşir ve sonra da KeyUp olayı gerçekleşir.

Bir tuşa basılması denetim için başka bir olayı tetikliyorsa, söz konusu olay KeyPress olayından sonra ama KeyUp olayından önce gerçekleşir. Örneğin, bir tuş vuruşu metin kutusundaki metni değiştiriyorsa, yani Change olayını tetikliyorsa, aşağıdaki olay dizisi gerçekleşir:

KeyDown ok KeyPress ok Change ok KeyUp

Tuş vuruşu odağın bir denetimden başka bir denetime geçmesine neden oluyorsa, ilk denetim için KeyDown olayı oluşurken ikinci denetim için KeyPress ve KeyUp olayları gerçekleşir. Örneğin, denetimdeki verileri değiştirir ve ardından SEKME tuşuna basarak bir sonraki denetime geçerseniz, aşağıdaki olay dizisi gerçekleşir:

  • İlk denetim:

    KeyDown ok BeforeUpdate ok AfterUpdate ok Exit ok LostFocus

  • İkinci denetim:

    Enter ok GotFocus ok KeyPress ok KeyUp

Fare olayları

Fare işaretçisi bir denetim veya formun üzerindeyken fare düğmesine tıklayıp bıraktığınızda, denetim için aşağıdaki olay dizisi gerçekleşir:

MouseDown ok MouseUp ok Click

Odak denetimdeyse ve odağı başka bir denetime taşımak için bu ikinci denetime tıklarsanız, aşağıdaki olay dizisi gerçekleşir:

  • İlk denetim:

    Exit ok LostFocus

  • İkinci denetim:

    Enter ok GotFocus ok MouseDown ok MouseUp ok Click

Başka bir kayda geçer ve sonra bir denetime tıklarsanız, denetim için Enter olayından önce form için Current olayı da gerçekleşir.

Denetime çift tıklamak, hem Click hem de DblClick olaylarının gerçekleşmesine neden olur. Örneğin komut düğmesi dışında bir denetime çift tıkladığınızda, denetim için aşağıdaki olay dizisi gerçekleşir:

MouseD own ok MouseUp ok Click ok DblClick ok MouseUp

Komut düğmesine çift tıkladığınızda, önceki olay dizisi gerçekleşir ve bunu ikinci bir Click olayı izler.

Fare işaretçisini form, bölüm veya denetim üzerinde hareket ettirdiğinizde, form, bölüm veya denetim için MouseMove olayı gerçekleşir. Bu olay, diğer fare olaylarından bağımsızdır.

Sayfanın Başı

Raporlar ve rapor bölümleri için olayların sırası

Raporu yazdırmak veya önizlemek için açtığınızda ya da raporu kapattığınızda, raporlar ve rapor bölümleri için olaylar gerçekleşir.

Raporlar için olaylar

Yazdırmak veya önizlemek üzere bir raporu açtığınızda ve daha sonra raporu kapattığınızda veya Access'te başka bir nesne sekmesine geçtiğinizde, rapor için aşağıdaki olay dizisi gerçekleşir:

Open ok Activate ok Close ok Deactivate

İki açık rapor arasında geçiş yaptığınızda, ilk rapor için Deactivate olayı ve ikinci rapor için de Activate olayı gerçekleşir:

Deactivate (rapor1) ok Activate (rapor2)

Rapordan Access'teki başka bir nesne sekmesine geçtiğinizde de rapor için Deactivate olayı gerçekleşir. Öte yandan, bir iletişim kutusuna, PopUp özelliği Yes olarak ayarlanmış bir forma veya başka bir programın penceresine geçtiğinizde, Deactivate olayı gerçekleşmez.

Sorguyu temel alan bir raporu açtığınızda, Access temel sorguyu çalıştırmadan önce rapor için Open olayını tetikler. Sonuç olarak, Open olayını yanıtlayan bir makro veya olay yordamı kullanarak raporun ölçütlerini ayarlayabilirsiniz. Örneğin makro veya olay yordamı, rapor ölçütlerini girebileceğiniz özel bir iletişim kutusu açabilir.

Rapor bölümleri için olaylar

Raporu yazdırdığınızda veya önizlediğinizde, rapor için Open ve Activate olayları gerçekleştikten sonra ama Close veya Deactivate olayları gerçekleşmeden önce, rapor bölümleri için Format ve Print olayları gerçekleşir:

Open (rapor) ok Activate (rapor) ok Format (rapor bölümü) ok Print (rapor bölümü) ok Close (rapor) ok Deactivate (rapor)

Buna ek olarak, biçimlendirme sırasında veya sonrasında ama Print olayından önce aşağıdaki olaylar gerçekleşir:

  • Rapor biçimlendirmesi sırasında Access önceki bir bölüme döndüğünde Retreat olayı gerçekleşir.

  • Rapor tarafından görüntülenen kayıt yoksa NoData olayı gerçekleşir.

  • Biçimlendirme sonrasında ama yazdırma öncesinde Page olayı gerçekleşir. Yazdırılan raporun görünümünü özelleştirmek için bu olayı kullanabilirsiniz.

Sayfanın Başı

Not : Makine Çevirisi Yasal Uyarısı: Bu makale, insan müdahalesi olmadan bir bilgisayar sistemi tarafından çevrilmiştir. Microsoft bu makine çevirilerini İngilizce bilmeyen kullanıcıların Microsoft ürünleri, hizmetleri ve teknolojileriyle ilgili içeriklerden yararlanmasına yardımcı olmak için sunar. Bu makale makine çevirisi olduğundan sözcük, cümle dizilimi ve gramer hataları içerebilir.

Yeteneklerinizi geliştirin
Eğitimleri keşfedin
Yeni özellikleri ilk olarak siz edinin
Office Insider Programına Katılın

Bu bilgi yararlı oldu mu?

Görüşleriniz için teşekkür ederiz!

Geri bildiriminiz için teşekkürler! Office destek temsilcilerimizden biriyle görüşmeniz yararlı olabilir.

×