ข้ามไปที่เนื้อหาหลัก
การสนับสนุน
ลงชื่อเข้าใช้
ลงชื่อเข้าใช้ด้วย Microsoft
ลงชื่อเข้าใช้หรือสร้างบัญชี
สวัสดี
เลือกบัญชีอื่น
คุณมีหลายบัญชี
เลือกบัญชีที่คุณต้องการลงชื่อเข้าใช้

หมายเหตุ: ฟังก์ชัน วิธีการ วัตถุ หรือคุณสมบัติที่อธิบายไว้ในหัวข้อนี้จะถูกปิดใช้งานถ้า Microsoft Jet Expression Service ทํางานในโหมด Sandbox ซึ่งจะป้องกันการประเมินนิพจน์ที่อาจไม่ปลอดภัย สําหรับข้อมูลเพิ่มเติมเกี่ยวกับโหมด Sandbox ให้ค้นหา "โหมด Sandbox" ในวิธีใช้

ให้ผลลัพธ์การดําเนินการเพื่อให้ระบบปฏิบัติการสามารถประมวลผลเหตุการณ์อื่นๆ ได้

ไวยากรณ์

DoEvents ( )

ข้อสังเกต

ฟังก์ชัน DoEvents จะส่งกลับจํานวนเต็มที่แสดงจํานวนฟอร์มที่เปิดอยู่ใน Microsoft Visual Basic เวอร์ชันสแตนด์อโลน เช่น Visual Basic, Professional Edition DoEvents จะส่งกลับค่าศูนย์ในแอปพลิเคชันอื่นทั้งหมด

DoEvents จะส่งผ่านการควบคุมไปยังระบบปฏิบัติการ ตัวควบคุมจะถูกส่งกลับหลังจากที่ระบบปฏิบัติการเสร็จสิ้นการประมวลผลเหตุการณ์ในคิวและคีย์ทั้งหมดในคิว SendKeys ได้ถูกส่งไป

DoEvents มีประโยชน์มากที่สุดสําหรับสิ่งง่ายๆ เช่น การอนุญาตให้ผู้ใช้ยกเลิกกระบวนการหลังจากเริ่มต้นแล้ว ตัวอย่างเช่น การค้นหาไฟล์ สําหรับกระบวนการที่ทํางานเป็นเวลานาน ทําให้การทํางานกับตัวประมวลผลสําเร็จได้ดีขึ้นโดยใช้ตัวจับเวลาหรือมอบหมายงานให้กับคอมโพเนนต์ ActiveX EXE ในกรณีหลังงานสามารถทํางานต่อไปได้อย่างอิสระจากแอปพลิเคชันของคุณและระบบปฏิบัติการจะดูแลการทํางานหลายอย่างและแบ่งเวลา

เมื่อใดก็ตามที่คุณส่งผลไปยังตัวประมวลผลภายในกระบวนงานเหตุการณ์ชั่วคราว ตรวจสอบให้แน่ใจว่า กระบวนงาน ไม่ได้ถูกดําเนินการอีกครั้งจากส่วนอื่นของรหัสของคุณก่อนที่การโทรครั้งแรกจะกลับมา ซึ่งอาจทําให้เกิดผลลัพธ์ที่คาดเดาไม่ได้ นอกจากนี้ อย่าใช้ DoEvents หากแอปพลิเคชันอื่นอาจโต้ตอบกับกระบวนการของคุณด้วยวิธีที่คาดไม่ถึงในช่วงเวลาที่คุณได้รับการควบคุม

ตัวอย่าง

หมายเหตุ: ตัวอย่างต่อไปนี้จะสาธิตการใช้ฟังก์ชันนี้ในโมดูล Visual Basic for Applications (VBA) สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการทํางานกับ VBA ให้เลือก การอ้างอิงสําหรับนักพัฒนา ในรายการดรอปดาวน์ที่อยู่ถัดจาก ค้นหา แล้วใส่คําอย่างน้อยหนึ่งคําในกล่องค้นหา

ตัวอย่างนี้ใช้ฟังก์ชัน DoEvents เพื่อทําให้การดําเนินการส่งผลไปยังระบบปฏิบัติการทุกๆ 1,000 รอบของลูป DoEvents จะส่งกลับจํานวนของฟอร์ม Visual Basic ที่เปิดอยู่ แต่เฉพาะเมื่อแอปพลิเคชันโฮสต์เป็น Visual Basic เท่านั้น

' 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.

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย

ข้อมูลนี้เป็นประโยชน์หรือไม่

คุณพึงพอใจกับคุณภาพภาษาเพียงใด
สิ่งที่ส่งผลต่อประสบการณ์ใช้งานของคุณ
เมื่อกดส่ง คำติชมของคุณจะถูกใช้เพื่อปรับปรุงผลิตภัณฑ์และบริการของ Microsoft ผู้ดูแลระบบ IT ของคุณจะสามารถรวบรวมข้อมูลนี้ได้ นโยบายความเป็นส่วนตัว

ขอบคุณสำหรับคำติชมของคุณ!

×