Структура FINDREPLACEA (commdlg.h)
Содержит сведения, используемые функциями FindText и ReplaceText для инициализации диалоговых окон Найти и Заменить . Зарегистрированное сообщение FINDMSGSTRING использует эту структуру для передачи входных данных поиска или замены пользователя в окно владельца диалогового окна Поиск или Замена .
Синтаксис
typedef struct tagFINDREPLACEA {
DWORD lStructSize;
HWND hwndOwner;
HINSTANCE hInstance;
DWORD Flags;
LPSTR lpstrFindWhat;
LPSTR lpstrReplaceWith;
WORD wFindWhatLen;
WORD wReplaceWithLen;
LPARAM lCustData;
LPFRHOOKPROC lpfnHook;
LPCSTR lpTemplateName;
} FINDREPLACEA, *LPFINDREPLACEA;
Члены
lStructSize
Тип: DWORD
Длина структуры в байтах.
hwndOwner
Тип: HWND
Дескриптор окна, которому принадлежит диалоговое окно. Оконная процедура указанного окна получает сообщения FINDMSGSTRING из диалогового окна. Этот элемент может быть любым допустимым дескриптором окна, но не должен иметь значение NULL.
hInstance
Тип: HINSTANCE
Если флаг FR_ENABLETEMPLATEHANDLE установлен в разделе Флаги, hInstance — это дескриптор объекта памяти, содержащего шаблон диалогового окна. Если установлен флаг FR_ENABLETEMPLATE , hInstance — это дескриптор модуля, который содержит шаблон диалогового окна с именем члена lpTemplateName . Если ни один из флагов не задан, этот элемент игнорируется.
Flags
Тип: DWORD
Набор битовых флагов, которые можно использовать для инициализации диалогового окна. Диалоговое окно устанавливает эти флаги при отправке зарегистрированного сообщения FINDMSGSTRING для указания входных данных пользователя. Этот элемент может иметь одно или несколько из следующих значений.
Значение | Значение |
---|---|
|
Если задано в сообщении FINDMSGSTRING , указывает, что диалоговое окно закрывается. При получении сообщения с установленным флагом дескриптор диалогового окна, возвращаемый функцией FindText или ReplaceText , становится недействительным. |
|
Если задано значение , выбрана кнопка Вниз переключателей направления в диалоговом окне Поиск , указывающая, что поиск следует выполнять из текущего расположения в конец документа. Если значение не задано, нажмите кнопку Вверх , поэтому следует выполнить поиск в начале документа. Этот флаг можно задать для инициализации диалогового окна. Если задано в сообщении FINDMSGSTRING , указывает выбор пользователя. |
|
Включает функцию перехватчика, указанную в элементе lpfnHook . Этот флаг используется только для инициализации диалогового окна. |
|
Указывает, что элементы hInstance и lpTemplateName указывают шаблон диалогового окна для использования вместо шаблона по умолчанию. Этот флаг используется только для инициализации диалогового окна. |
|
Указывает, что элемент hInstance идентифицирует блок данных, содержащий предварительно загруженный шаблон диалогового окна. Система игнорирует элемент lpTemplateName , если указан этот флаг. |
|
Если задано в сообщении FINDMSGSTRING , указывает, что пользователь нажал кнопку Найти далее в диалоговом окне Найти или заменить . Элемент lpstrFindWhat указывает строку для поиска. |
|
Если задано при инициализации диалогового окна Поиск , скрывает переключатели направления поиска. |
|
Если задано при инициализации диалогового окна Найти или Заменить, скрывает поле Проверка вариант соответствия. |
|
Если этот параметр задан при инициализации диалогового окна "Найти или заменить", то скрывает проверка поле "Найти или заменить" поле "Только Word". |
|
Если задано значение , выбрано поле Проверка совпадения регистра, указывающее, что поиск должен быть с учетом регистра. Если значение не задано, поле проверка не выбрано, поэтому при поиске регистр не учитывается. Этот флаг можно задать для инициализации диалогового окна. Если задано в сообщении FINDMSGSTRING , указывает выбор пользователя. |
|
Если этот параметр задан при инициализации диалогового окна "Найти или заменить", отключает поле проверка совпадения. |
|
Если задано при инициализации диалогового окна Поиск , отключает переключатели направления поиска. |
|
Если этот параметр задан при инициализации диалогового окна "Найти или заменить", отключает поле проверка Word целиком. |
|
Если задано в сообщении FINDMSGSTRING , указывает, что пользователь нажал кнопку Заменить в диалоговом окне Замена . Элемент lpstrFindWhat указывает строку для замены, а член lpstrReplaceWith — строку замены. |
|
Если задано в сообщении FINDMSGSTRING , указывает, что пользователь нажал кнопку Заменить все в диалоговом окне Замена . Элемент lpstrFindWhat указывает строку для замены, а член lpstrReplaceWith — строку замены. |
|
Вызывает отображение кнопки Справка в диалоговом окне. Член hwndOwner должен указать окно для получения зарегистрированных сообщений HELPMSGSTRING , которые диалоговое окно отправляет, когда пользователь нажимает кнопку Справка . |
|
Если задано значение , выбрано поле Сопоставить целое Word только проверка, указывающее, что следует искать только целые слова, соответствующие строке поиска. Если значение не задано, поле проверка не выбрано, поэтому следует также искать фрагменты слов, соответствующие строке поиска. Этот флаг можно задать для инициализации диалогового окна. Если задано в сообщении FINDMSGSTRING , указывает выбор пользователя. |
lpstrFindWhat
Тип: LPTSTR
Строка поиска, введенная пользователем в элементе управления "Найти что ". Необходимо динамически выделять буфер или использовать глобальный или статический массив, чтобы он не область перед закрытием диалогового окна. Буфер должен содержать не менее 80 символов. Если буфер содержит строку при инициализации диалогового окна, она отображается в элементе управления "Найти что ". Если в сообщении FINDMSGSTRING указан флаг FR_FINDNEXT , lpstrFindWhat содержит строку для поиска. Флаги FR_DOWN, FR_WHOLEWORD и FR_MATCHCASE указывают направление и тип поиска. Если сообщение FINDMSGSTRING указывает флаги FR_REPLACE или FR_REPLACE , lpstrFindЧто содержит строку для замены.
lpstrReplaceWith
Тип: LPTSTR
Строка замены, введенная пользователем в элементе управления " Заменить на". Необходимо динамически выделять буфер или использовать глобальный или статический массив, чтобы он не область до закрытия диалогового окна. Если буфер содержит строку при инициализации диалогового окна, эта строка отображается в элементе управления "Заменить на ".
Если в сообщении FINDMSGSTRING указываются флаги FR_REPLACE или FR_REPLACEALL , lpstrReplaceWith содержит строку замены .
Функция FindText игнорирует этот элемент.
wFindWhatLen
Тип: WORD
Длина (в байтах) буфера, на который указывает член lpstrFindЧто .
wReplaceWithLen
Тип: WORD
Длина (в байтах) буфера, на который указывает член lpstrReplaceWith .
lCustData
Тип: LPARAM
Определяемые приложением данные, которые система передает в процедуру перехватчика, определяемую членом lpfnHook . Когда система отправляет WM_INITDIALOG сообщение в процедуру перехватчика, параметр lParam сообщения является указателем на структуру FINDREPLACE, указанную при создании диалогового окна. Процедура перехватчика может использовать этот указатель для получения значения lCustData .
lpfnHook
Тип: LPFRHOOKPROC
Указатель на процедуру перехватчика FRHookProc , которая может обрабатывать сообщения, предназначенные для диалогового окна. Этот элемент игнорируется, если в элементе Flags не установлен флаг FR_ENABLEHOOK. Если процедура перехватчика возвращает значение FALSE в ответ на сообщение WM_INITDIALOG , процедура перехватчика должна отобразить диалоговое окно, иначе диалоговое окно не будет отображаться. Для этого сначала выполните любые другие операции рисования, а затем вызовите функции ShowWindow и UpdateWindow .
lpTemplateName
Тип: LPCTSTR
Имя ресурса шаблона диалогового окна в модуле, определяемого элементом hInstance . Этот шаблон заменяется стандартным шаблоном диалогового окна. Для нумерованных ресурсов диалогового окна это может быть значение, возвращаемое макросом MAKEINTRESOURCE . Этот элемент игнорируется, если флаг FR_ENABLETEMPLATE не установлен в элементе Flags .
Комментарии
Примечание
Заголовок commdlg.h определяет FINDREPLACE как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Верхняя часть | commdlg.h (включая Windows.h) |
См. также раздел
Общая библиотека диалоговых окон
Основные понятия
Справочные материалы