ฟังก์ชันChooseFontสร้างตัวอักษรทั่วไปกล่องโต้ตอบที่ช่วยให้ผู้ใช้เลือกแอตทริบิวต์สำหรับแบบอักษรแบบลอจิคัล แอตทริบิวต์เหล่านี้ประกอบด้วยชื่อแบบอักษร ลักษณะ (ตัวหนา ตัวเอียง หรือปกติ) ชี้ขนาด ลักษณะพิเศษ (ขีดเส้นใต้ ขีดทับ และ สีข้อความ), และสคริปต์ (หรือชุดอักขระ).
(BOOL ChooseFont LPCHOOSEFONT lpcf / / ชี้ไปยังโครงสร้างมีการเตรียมใช้งาน / / ข้อมูล);
หากผู้ใช้คลิกปุ่มตกลงของกล่องโต้ตอบ ค่าส่งกลับจะไม่ใช่ศูนย์ สมาชิกของโครงสร้างCHOOSEFONTระบุผู้ใช้ที่เลือก.
ถ้าผู้ใช้ยกเลิก หรือปิดกล่องโต้ตอบแบบอักษรหรือมีข้อผิดพลาดเกิดขึ้น ค่าส่งกลับเป็นศูนย์ การรับข้อมูลความผิดพลาดแบบขยาย เรียกใช้ฟังก์ชันCommDlgExtendedErrorซึ่งสามารถส่งกลับหนึ่งในค่าต่อไปนี้:
CDERR_FINDRESFAILURE | CDERR_NOHINSTANCE |
CDERR_INITIALIZATION | CDERR_NOHOOK |
CDERR_LOCKRESFAILURE | CDERR_NOTEMPLATE |
CDERR_LOADRESFAILURE | CDERR_STRUCTSIZE |
CDERR_LOADSTRFAILURE | CFERR_MAXLESSTHANMIN |
CDERR_MEMALLOCFAILURE | CFERR_NOFONTS |
CDERR_MEMLOCKFAILURE |
คุณสามารถจัดเป็นขั้นตอนของ hook CFHookProcสำหรับกล่องโต้ตอบแบบอักษร ขั้นตอนของ hook สามารถประมวลผลข้อความที่ส่งไปยังกล่องโต้ตอบ เมื่อต้องการเปิดการใช้งานในขั้นตอนของ hook ตั้งค่าสถานะ CF_ENABLEHOOK ในสถานะสมาชิกของโครงสร้างCHOOSEFONTและระบุอยู่ของขั้นตอนของ hook ในสมาชิกlpfnHook.
ขั้นตอนของ hook สามารถส่งข้อความ WM_CHOOSEFONT_GETLOGFONT, WM_CHOOSEFONT_SETFLAGS และ WM_CHOOSEFONT_SETLOGFONT ไปยังกล่องโต้ตอบการรับ และตั้งค่าปัจจุบันและสถานะของกล่องโต้ตอบ.
nbsp Windows &NT:ต้องการเวอร์ชัน 3.1 หรือรุ่นที่ใหม่กว่า
Windows:ต้องใช้ Windows 95 หรือรุ่นที่ใหม่กว่า
Windows CE:ไม่สนับสนุน
หัวข้อ:ประกาศใน commdlg.h
ไลบรารีที่นำเข้า:ใช้ comdlg32.lib
Unicode:นำมาใช้เป็น Unicode และ ANSI รุ่นบน Windows NT.
ภาพรวมไลบรารีของกล่องโต้ตอบทั่วไปฟังก์ชันของกล่องโต้ตอบทั่วไป CFHookProc, CHOOSEFONT, CommDlgExtendedError, LOGFONT, WM_CHOOSEFONT_GETLOGFONT, WM_CHOOSEFONT_SETFLAGS, WM_CHOOSEFONT_SETLOGFONT