Страница 40 из 59 Компонент TFindDialog TObject->TPersistent->TCornponent->TCoiranonDialog-”TFindDialog Модуль DIALOGS Страница Палитры компонентов Dialogs С помощью этого диалога можно осуществить подготовку к поиску нужного фрагмента в тексте. В этом окне вы можете определить все нужные атрибуты, но написание собственно кода поиска все-таки возложено на программиста. Рассмотрим опции, определенные в свойстве: (pb) property Options: TFindOptions; TFindOption= (frDown, frFindNext, frHideMatchCase, frHideWholeWord, frHideUpDown, frMatchCase, frDisableMatchCase, frDisableUpDown, frDisableWholeWord, frReplace, frReplaceAl1, frWholeWord, frShowHelp) ; TFindOptions = set of TFindOption; По умолчанию в диалоге имеется группа радиокнопок, задающих направление поиска текста. Ее можно настроить с помощью опций: frDown — в случае наличия этой опции первоначальное направление поиска — вниз (от начала к концу). Устанавливается соответствующая радиокнопка; frDisableUpDown — запрещает выбор направлений. Группа радиокнопок показывается серым цветом; frHideUpDown — запрещает выбор направлений и прячет эту группу радиокнопок. Поиск может осуществляться с учетом регистра символов. Если отмечен флажок Match Case, регистры символов должны совпадать, т. е. в этом случае "Word" не будет равно "word". За состояние флажка отвечают следующие три опции: frHideMatchCase — прячет флажок; frDisableMatchCase — показывает флажок, но делает его неактивным. В обоих случаях учет регистра невозможен; Если эти опции не установлены, флажок в диалоге активен, и его значение может быть изменено пользователем. Его значение соответствует наличию в Options опции frMatchCasc. Также в диалоге предусмотрен флажок Match Whole Words Only, который разрешает или запрещает поиск заданного текста только в виде целых слов. Опции frHideWholeWord, frDisableWholeWord и frWholeWord имеют тот же смысл, что и три опции предыдущего флажка. frShowHelp — включает в состав диалога кнопку Help; Одна опция является информационной. Когда пользователь нажал кнопку Find Next, то опция frFindNext появляется в множестве Options. При каждом случае, когда пользователь нажал кнопку Find Next, возникает событие: (Р1э) property OnFind: TNotifyEvent ; В его обработчике программист должен реализовать собственно поиск. Текст, который требуется найти, нужно поместить в свойство: (Pb) property FindText: string; Координаты места появления диалога на экране могут быть заданы либо в виде точки property Position: TPoint; либо по отдельности: property Left: Integer; property Top: Integer; Для вьшолнения рада оптаций программисту доступен дескриптор диалогового окна (Ro) property Handle: HWnd; и метод, закрывающий это окно: procedure CloseDialog; |