WM_CTLCOLORDLG ข้อความถูกส่งไปยังกล่องโต้ตอบก่อนที่ระบบจะวาดกล่องโต้ตอบ โดยตอบสนองต่อข้อความนี้ กล่องโต้ตอบสามารถตั้งค่าสีของข้อความและพื้นหลัง โดยใช้หมายเลขอ้างอิงบริบทของการแสดงผลที่กำหนดอุปกรณ์.
WM_CTLCOLORDLG hdcDlg = wParam (HDC) / / จัดการของการโต้ตอบกล่องแสดงบริบท hwndDlg = lParam (HWND) / / จัดการของกล่องโต้ตอบ
ถ้าโปรแกรมประยุกต์ใช้ประมวลผลข้อความนี้ จะต้องส่งกลับหมายเลขอ้างอิงของแปรง ระบบใช้แปรงเพื่อระบายสีพื้นหลังของกล่องโต้ตอบ.
ฟังก์ชันDefWindowProcเลือกสีของระบบเป็นค่าเริ่มต้นสำหรับกล่องโต้ตอบ.
ระบบไม่อัตโนมัติทำลายแปรงส่งคืน เป็นความรับผิดชอบของโปรแกรมประยุกต์เพื่อทำลายแปรงเมื่อไม่จำเป็น.
ไม่เคยมีส่งข้อความ WM_CTLCOLORDLG ระหว่างหัวข้อ ส่งภายในเธรดเดียวเท่านั้น.
หมายเหตุที่ข้อความ WM_CTLCOLORDLG จะถูกส่งไปยังกล่องโต้ตอบตัวเอง อื่น ๆ WM_CTLCOLOR * ความทั้งหมดจะถูกส่งไปยังเจ้าของของตัวควบคุม.
ถ้าขั้นตอนกล่องโต้ตอบจัดการข้อความนี้ ควรทอดค่าส่งคืนที่ต้องการเป็น BOOL และส่งกลับค่าโดยตรง ถ้าขั้นตอนในกล่องโต้ตอบส่งกลับ FALSE แล้วจัดการข้อความเริ่มต้นถูกดำเนินการ ค่า DWL_MSGRESULT ที่กำหนด โดยฟังก์ชันSetWindowLongจะถูกละเว้น.
nbsp Windows &NT:ต้องการเวอร์ชัน 3.1 หรือรุ่นที่ใหม่กว่า
Windows:ต้องใช้ Windows 95 หรือรุ่นที่ใหม่กว่า
Windows CE:ต้องการเวอร์ชัน 1.0 หรือรุ่นใหม่กว่า
หัวข้อ:ประกาศใน winuser.h.
ภาพรวมของกล่องโต้ตอบข้อความของกล่องโต้ตอบ DefWindowProc, RealizePalette, SelectPalette, WM_CTLCOLORBTN, WM_CTLCOLOREDIT, WM_CTLCOLORLISTBOX, WM_CTLCOLORMSGBOX, WM_CTLCOLORSCROLLBAR, WM_CTLCOLORSTATIC