הפונקציה FindText יוצרת ללא מצב המוגדר על-ידי המערכת למצוא תיבת דו-שיח המאפשרת למשתמש לציין מחרוזת חיפוש ואפשרויות לשימוש בעת חיפוש טקסט במסמך.
(HWND FindText LPFINDREPLACE lpfr / / מצביע למבנה עם אתחול / / נתונים);
אם הפונקציה מצליחה, הערך המוחזר הוא נקודת האחיזה חלון אל תיבת הדו-שיח. באפשרותך להשתמש מטפל בחלון כדי לקיים תקשורת עם או כדי לסגור את תיבת הדו-שיח.
אם הפעולה תיכשל, הערך המוחזר הוא NULL. כדי לקבל מידע שגיאות מורחב, לפונקציה CommDlgExtendedError . CommDlgExtendedError עשויות להחזיר אחד מהקודים הבאים:
| CDERR_FINDRESFAILURE | CDERR_MEMLOCKFAILURE |
| CDERR_INITIALIZATION | CDERR_NOHINSTANCE |
| CDERR_LOCKRESFAILURE | CDERR_NOHOOK |
| CDERR_LOADRESFAILURE | CDERR_NOTEMPLATE |
| CDERR_LOADSTRFAILURE | CDERR_STRUCTSIZE |
| CDERR_MEMALLOCFAILURE | FRERR_BUFFERLENGTHZERO |
הפונקציה FindText אינה מבצעת פעולת החיפוש. במקום זאת, תיבת הדו-שיח שולחת הודעות FINDMSGSTRING רשום ההליך חלון של חלון הבעלים של תיבת הדו-שיח. בעת יצירת תיבת הדו-שיח, חבר hwndOwner של מבנה FINDREPLACE מזהה את חלון הבעלים.
לפני הקריאה FindText, עליך לקרוא את הפונקציה RegisterWindowMessage כדי לקבל את המזהה עבור ההודעה FINDMSGSTRING. הפרוצדורה תיבת הדו-שיח משתמש במזהה זה לשליחת הודעות כאשר המשתמש לוחץ על לחצןהבא לאתר, או בעת סגירת תיבת הדו-שיח. הפרמטר lParam ההודעה FINDMSGSTRING מכיל מצביע למבנה FINDREPLACE . החבר בדגלים של מבנה זה מציין את האירוע שגרם את ההודעה. חברים אחרים של המבנה מציינים הקלט של המשתמש .
אם אתה יוצר תיבת דו-שיח חיפוש , עליך להשתמש גם ב הפונקציה IsDialogMessage בלולאה המסר העיקרי של היישום שלך כדי להבטיח תיבת הדו-שיח מעבד כראוי קלט של לוח מקשים, כגון מקשי tab ו- esc. IsDialogMessage מחזירה ערך המציין אם תיבת הדו-שיח חיפוש לעבד את ההודעה.
באפשרותך לספק פרוצדורת hook FRHookProc של תיבת הדו-שיח חיפוש . ההליך הוו ניתן לעבד הודעות שנשלחו אל תיבת הדו-שיח. כדי לאפשר שגרה הוו, הגדרת הדגל FR_ENABLEHOOK החבר בדגלים של מבנה FINDREPLACE , ציין את הכתובת של ההליך הוו חבר lpfnHook.
nbsp; Windows &NT: מחייב גירסה 3.1 או גירסה מתקדמת יותר.
Windows:נדרש Windows 95 או גירסה מתקדמת יותר.
חלונות CE:לא נתמך.
כותרת עליונה:להצהיר על commdlg.h.
ייבוא ספריית:השתמש comdlg32.lib.
Unicode:מיושם על גירסאות Unicode ו- ANSI ב- Windows NT.
סקירה נפוצות על תיבת הדו-שיח ספריית, פונקציות נפוצות של תיבת הדו-שיח, CommDlgExtendedError, FINDMSGSTRING, FINDREPLACE, FRHookProc, IsDialogMessage, RegisterWindowMessage, החלפת טקסט תחת