CWaitCursorไม่มีคลาสพื้นฐาน?
คลาCWaitCursorแสดงวิธีหนึ่งบรรทัดแสดงเคอร์เซอร์รอ ซึ่งมักจะแสดงเป็นทราย ในขณะที่คุณกำลังทำการดำเนินการที่ยาวเกินไป แนวทางปฏิบัติในการเขียนโปรแกรม Windows ที่ดีต้องที่คุณแสดงเคอร์เซอร์รอเมื่อใดก็ ตามที่คุณกำลังทำการดำเนินการที่ใช้ระยะเวลาสามารถ?
เมื่อต้องการแสดงเคอร์เซอร์รอ เพียงแค่กำหนดตัวแปรCWaitCursorก่อนรหัสที่ทำการดำเนินการที่ยาวเกินไป พารามิเตอร์ของวัตถุทำให้เคอร์เซอร์รอจะแสดงขึ้นโดยอัตโนมัติ?
เมื่อวัตถุไปตกขอบเขต (ในตอนท้ายของบล็อกในซึ่งวัตถุCWaitCursorได้ประกาศ), destructor ของตั้งค่าเคอร์เซอร์เคอร์เซอร์ก่อนหน้า กล่าวอีกนัยหนึ่ง วัตถุทำจำเป็นล้างโดยอัตโนมัติ?
หมายเหตุnbsp เนื่องจากของวิธีของตน constructors และ destructors ทำงาน วัตถุCWaitCursorได้เสมอประกาศเป็นตัวแปรท้องถิ่น พวกเขากำลังประกาศเป็นตัวแปรส่วนกลางไม่เคยและ ไม่ถูกปันพวกเขาส่วนกับใหม่(&N)?
ถ้าคุณทำการดำเนินการซึ่งอาจทำให้เคอร์เซอร์เปลี่ยนแปลง เช่นการแสดงในกล่องข้อความหรือกล่องโต้ตอบ เรียกใช้ฟังก์ชันสมาชิกคืนค่าเพื่อคืนค่าเคอร์เซอร์รอ มันจะถูกเรียกคืนแม้เมื่อเคอร์เซอร์รอกำลังแสดงอยู่?
เมื่อต้องการแสดงเคอร์เซอร์รออีกวิธีคือ ใช้การรวมกันของCCmdTarget::BeginWaitCursor, CCmdTarget::EndWaitCursorและบางทีที่CCmdTarget::RestoreWaitCursor อย่างไรก็ตามCWaitCursorง่ายกว่าการใช้ได้เนื่องจากคุณไม่จำเป็นต้องตั้งค่าเคอร์เซอร์ไปก่อนหน้าเคอร์เซอร์เมื่อคุณทำงานกับการดำเนินการที่ยาวเกินไป?
หมายเหตุnbsp MFC ตั้งค่า และการคืนค่าโดยใช้ฟังก์ชันCWinApp::DoWaitCursorเสมือนเคอร์เซอร์ คุณสามารถแทนที่ฟังก์ชันนี้เพื่อให้มีลักษณะการทำงานแบบกำหนดเอง(&N)?
#รวม lt;afxwin.h>
สมาชิกของคลาส|nbsp แผนภูมิของลำดับชั้น(&N)
ดูเพิ่มเติมnbspCCmdTarget::BeginWaitCursor, CCmdTarget::EndWaitCursor, CCmdTarget::RestoreWaitCursor, CWinApp::DoWaitCursor(&N)