MESSAGE_HANDLER

MESSAGE_HANDLER ( msg, func )

พารามิเตอร์

ข่าวสารเกี่ยวกับ

[ใน] ข้อความ Windows?

func

[ใน] ชื่อของฟังก์ชันตัวจัดการข้อความ?

หมายเหตุ

กำหนดรายการในการแมปข้อความ MESSAGE_HANDLERแผนที่ความ Windows ไปยังฟังก์ชันตัวจัดการที่ระบุ ตัวอย่างเช่น:

คลา CMyClass: ...
{
สาธารณะ:
 nbsp ...

BEGIN_MSG_MAP(CMyClass)
      MESSAGE_HANDLER (WM_PAINT, OnPaint)
      ...
   END_MSG_MAP()

/ / เมื่อวัตถุ CMyClass ได้รับการ WM_PAINT
   / / ข้อความ ข้อความจะนำไป
   / / CMyClass::OnPaint จริงสำหรับการประมวลผล
   LRESULT OnPaint (...)
   { ... }

}(&N)

ต้องกำหนดฟังก์ชันใด ๆ ที่ระบุไว้ในแมโคMESSAGE_HANDLERเป็นดังนี้:

LRESULT MessageHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOLamp; bHandled)(&A)

ชุดการแมปข้อความ bHandled เป็นจริงก่อน MessageHandler เรียกว่า ถ้า MessageHandler ไม่ได้เต็มที่จัดการข้อความ คุณควรตั้งค่า bHandled เป็นเท็จเพื่อบ่งชี้ถึงความจำเป็นในการประมวลผลต่อไป?

หมายเหตุnbsp  เริ่มต้นการแมปข้อความกับBEGIN_MSG_MAPเสมอ จากนั้นคุณสามารถประกาศข้อความอื่นต่อมาแผนที่ด้วยALT_MSG_MAP แมโคEND_MSG_MAPทำเครื่องหมายสิ้นสุดการแมปข้อความ แผนที่ทุกข้อความต้องมีอินสแตนซ์หนึ่งของBEGIN_MSG_MAPและEND_MSG_MAP(&N)?

นอกจากการMESSAGE_HANDLERคุณสามารถใช้COMMAND_HANDLERและNOTIFY_HANDLERเพื่อแมป WM_COMMANDและ WM_NOTIFYความ ตามลำดับ?

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้แผนที่ของข้อความใน ATL ดูแผนที่ของข้อความในบทความ "ATL หน้าต่างชั้น

ATL แมโครและฟังก์ชันที่ส่วนกลาง

ดูเพิ่มเติม

MESSAGE_RANGE_HANDLER

Index