ReplaceText

ฟังก์ชันReplaceTextสร้างกล่องโต้ตอบสร้างที่กำหนดโดยระบบที่ยอมให้ผู้ใช้ระบุสายอักขระการค้นหา และการแทนสตริ ตลอดจนตัวเลือกเพื่อควบคุมการค้นหา และแทน.

(HWND ReplaceText LPFINDREPLACE  lpfr / / ชี้ไปยังโครงสร้างมีการเตรียมใช้งาน / / ข้อมูล);
 

พารามิเตอร์

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

ส่งกลับค่า

ถ้าฟังก์ชันสำเร็จ ค่าส่งกลับเป็นหมายเลขอ้างอิงของหน้าต่างกล่องโต้ตอบ คุณสามารถใช้หมายเลขอ้างอิงหน้าต่างเพื่อสื่อสารกับกล่องโต้ตอบ หรือปิด.

ถ้าฟังก์ชันล้มเหลว ส่งคืนค่าเป็น NULL การรับข้อมูลความผิดพลาดแบบขยาย เรียกใช้ฟังก์ชันCommDlgExtendedErrorซึ่งสามารถส่งกลับรหัสข้อผิดพลาดต่อไปนี้อย่างใดอย่างหนึ่ง:

CDERR_FINDRESFAILURE CDERR_MEMLOCKFAILURE
CDERR_INITIALIZATION CDERR_NOHINSTANCE
CDERR_LOADRESFAILURE CDERR_NOHOOK
CDERR_LOADSTRFAILURE CDERR_NOTEMPLATE
CDERR_LOCKRESFAILURE CDERR_STRUCTSIZE
CDERR_MEMALLOCFAILURE FRERR_BUFFERLENGTHZERO

หมายเหตุ

ฟังก์ชันReplaceTextจะทำการดำเนินการแทนที่ข้อความ แทน กล่องโต้ตอบส่งข้อความFINDMSGSTRINGลงทะเบียนลงในกระบวนงานของหน้าต่างของหน้าต่างเจ้าของกล่องโต้ตอบ เมื่อคุณสร้างกล่องโต้ตอบ สมาชิกที่hwndOwnerของโครงสร้างFINDREPLACEระบุเจ้าของหน้าต่าง.

ก่อนที่จะเรียกReplaceTextคุณต้องเรียกใช้ฟังก์ชันRegisterWindowMessageเพื่อรับรหัสสำหรับข้อความ FINDMSGSTRING ขั้นตอนในกล่องโต้ตอบใช้ตัวระบุนี้เพื่อส่งข้อความ เมื่อผู้ใช้คลิกที่ปุ่มค้นหาถัดไป Replace หรือแทนทั้งหมด หรือ เมื่อมีการปิดกล่องโต้ตอบ พารามิเตอร์lParam FINDMSGSTRING ข้อความประกอบด้วยตัวชี้ไปยังโครงสร้างFINDREPLACE สมาชิกสถานะของโครงสร้างนี้บ่งชี้ว่า เหตุการณ์ที่เกิดจากข้อความ สมาชิกคนอื่น ๆ ของโครงสร้างการป้อนข้อมูลของผู้ใช้ที่ระบุว่า.

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

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

QuickInfo

nbsp Windows &NT:ต้องการเวอร์ชัน 3.1 หรือรุ่นที่ใหม่กว่า
Windows:ต้องใช้ Windows 95 หรือรุ่นที่ใหม่กว่า
Windows CE:ไม่สนับสนุน
หัวข้อ:ประกาศใน commdlg.h
ไลบรารีที่นำเข้า:ใช้ comdlg32.lib
Unicode:นำมาใช้เป็น Unicode และ ANSI รุ่นบน Windows NT.

ดูเพิ่มเติม

ภาพรวมไลบรารีของกล่องโต้ตอบทั่วไปฟังก์ชันกล่องโต้ตอบทั่วไป CommDlgExtendedError,FINDREPLACE , FRHookProc, IsDialogMessage, RegisterWindowMessage, WM_CTLCOLORDLG