วาดเจ้าของกล่องคำสั่งผสม

แอปพลิเคชันสามารถสร้างกล่องคำสั่งผสมวาดเจ้าของรับผิดชอบสำหรับการวาดภาพในรายการ แม่หน้าต่างหรือกล่องโต้ตอบของการวาดเจ้าของกล่องคำสั่งผสม (กับเจ้า) ได้รับข้อความWM_DRAWITEMเมื่อส่วนของกล่องคำสั่งผสมต้องมีทาสี มีกล่องคำสั่งผสมที่วาดเจ้าของสามารถข้อมูลรายการอื่นนอกเหนือจาก หรือในนอกจาก สตริงข้อความ กล่องคำสั่งผสมที่วาดเจ้าได้ทุกชนิด อย่างไรก็ตาม ตัวควบคุมการแก้ไขในกล่องคำสั่งผสมแบบหล่นลง หรือวิสามารถแสดงเฉพาะข้อความ ขณะเจ้า paints เขตข้อมูลเลือกในกล่องรายการแบบหล่นลง.

เจ้าของกล่องคำสั่งผสมที่วาดเจ้าต้องประมวลผลข้อความ WM_DRAWITEM มีส่งข้อความนี้เมื่อใดก็ ตามส่วนของกล่องคำสั่งผสมต้องถูกวาดขึ้นมาใหม่ เจ้าของอาจต้องประมวลผลข้อความอื่น ๆ ทั้งนี้ขึ้นอยู่กับลักษณะที่ระบุสำหรับกล่องคำสั่งผสม.

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

เจ้าของกล่องคำสั่งผสมที่วาดเจ้าสามารถประมวลผลข้อความWM_MEASUREITEMเพื่อระบุขนาดของข้อมูลในรายการในกล่องคำสั่งผสม ถ้าแอพลิเคชันสร้างกล่องคำสั่งผสม โดยใช้ลักษณะ CBS_OWNERDRAWFIXED ระบบส่งข้อความ WM_MEASUREITEM เพียงครั้งเดียว ขนาดที่ระบุ โดยเจ้าของถูกใช้สำหรับสินค้ารายการทั้งหมด หากมีใช้ลักษณะ CBS_OWNERDRAWVARIABLE ระบบส่งข้อความ WM_MEASUREITEM สำหรับสินค้าแต่ละรายการที่เพิ่มลงในกล่องคำสั่งผสม เจ้าของสามารถตรวจสอบ หรือการตั้งค่าความสูงของรายการตลอดเวลา โดยใช้ข้อความCB_GETITEMHEIGHTและCB_SETITEMHEIGHTตามลำดับ.

ถ้าข้อมูลที่แสดงในกล่องคำสั่งผสมที่วาดเจ้าประกอบด้วยข้อความ แอปพลิเคชันสามารถเก็บติดตามของข้อความสำหรับแต่ละรายการ โดยการระบุลักษณะ CBS_HASSTRINGS กล่องคำสั่งผสมที่ มีลักษณะ CBS_SORT จะถูกเรียงลำดับตามข้อความนี้ ถ้ากล่องคำสั่งผสมจะถูกเรียงลำดับ และไม่ของลักษณะ CBS_HASSTRINGS เจ้าของต้องประมวลผลข้อความWM_COMPAREITEM.

ในกล่องคำสั่งผสมที่วาดเจ้า เจ้าของต้องเก็บติดตามของรายการที่ประกอบด้วยข้อมูลอื่น ๆ นอกเหนือจาก หรือนอกเหนือจาก เป็นข้อความ หนึ่งวิธีที่สะดวกในการทำเช่นนี้เป็นการ บันทึกหมายเลขอ้างอิงถึงข้อมูลที่เป็นข้อมูลสินค้า สำหรับข้อมูลเพิ่มเติมเกี่ยวกับข้อมูลสินค้า ดูข้อมูลที่เกี่ยวข้องกับข้อมูลในรายการ การเพิ่มวัตถุข้อมูลที่เกี่ยวข้องกับรายการในกล่องคำสั่งผสม เจ้าของสามารถประมวลผลข้อความWM_DELETEITEM.

สำหรับตัวอย่างของกล่องคำสั่งผสมที่วาดเจ้าตัว ดูการสร้างกล่องคำสั่งผสมแบบ Owner-Drawn.

Index