Not
Microsoft Jet İfade Hizmeti korumalı alan modunda çalışıyorsa, bu konuda açıklanan işlev, yöntem, nesne veya özellik devre dışı bırakılır ve bu da güvenli olmayabilecek ifadelerin değerlendirilmesini engeller. Korumalı alan modu hakkında daha fazla bilgi için, Yardım'da "korumalı alan modu" araması yapın.
İşletim sisteminin diğer olayları işleyebilmesi için yürütme sağlar.
Söz dizimi
DoEvents( )
Açıklamalar
DoEvents işlevi, Visual Basic, Professional Edition gibi Microsoft Visual Basic'in tek başına sürümlerindeki açık formların sayısını temsil eden bir Tamsayı döndürür. DoEvents , diğer tüm uygulamalarda sıfır döndürür.
DoEvents , denetimi işletim sistemine geçirir. İşletim sistemi kuyruğundaki olayları işlemeyi bitirdikten ve SendKeys kuyruğundaki tüm anahtarlar gönderildikten sonra denetim döndürülür.
DoEvents , bir kullanıcının bir dosya araması gibi bir işlemi başladıktan sonra iptal etmesine izin vermek gibi basit şeyler için en kullanışlıdır. Uzun süre çalışan işlemler için, işlemciye verim, bir Zamanlayıcı kullanarak veya görevi bir ActiveX EXE bileşenine devrederek daha iyi gerçekleştirilir. İkinci durumda, görev uygulamanızdan tamamen bağımsız olarak devam edebilir ve işletim sistemi çoklu görev ve zaman dilimleme ile ilgilenir.
Bir olay yordamı içinde işlemciye geçici olarak her teslim olduğunuzda, ilk çağrı geri dönmeden önce yordamın kodunuzun farklı bir bölümünden yeniden yürütülmediğinden emin olun; Bu, öngörülemeyen sonuçlara neden olabilir. Ayrıca, kontrolü verdiğiniz süre boyunca diğer uygulamalar prosedürünüzle öngörülemeyen şekillerde etkileşime girebilecekse DoEvents'i kullanmayın.
Örnek
Not
Aşağıdaki örneklerde, bu işlevin Visual Basic for Applications (VBA) modülünde kullanımı gösterilir. VBA ile çalışma hakkında daha fazla bilgi için, rama'nın yanındaki açılan listede Geliştirici Başvurusu'nu seçin ve arama kutusuna bir veya birden çok terim yazın.
Bu örnekte, DoEvents işlevi, yürütmenin döngünün her 1000 yinelemesinde bir işletim sistemine teslim olmasını sağlamak için kullanılır. DoEvents , açık Visual Basic formlarının sayısını döndürür, ancak bunun için konak uygulamasının Visual Basic olması gerekir.
' Create a variable to hold number of
' Visual Basic forms loaded and visible.
Dim I, OpenForms
For I = 1 To 150000 ' Start loop.
If I Mod 1000 = 0 Then ' If loop has repeated
' 1000 times.
OpenForms = DoEvents ' Yield to operating system.
End If
Next I ' Increment loop counter.