Справочник по компонентам Delphi. Часть 2
Страница 40. Компонент TFindDialog


Компонент 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;
 
 
« Предыдущая статья   Следующая статья »