Реферат: Записная книжка на Delphi 7
Для поиска нужного текста в Delphi есть компонент FindDialog. Перенесём этот компонент с закладки Dialogs.
Вставляем следующий код в OnClick кнопки:
Spos:=memo1.SelStart; // Запоминание позиции курсора
with finddialog1 do begin
{Начальное значение поиска текста, выделенный в Мемо}
findtext:=memo1.SelText;
// позиционирование окна диалога внизу Memo
position:=point(mainform.Left,mainform.Top+memo1.Top+memo1.Height) ;
// удолнеия из диалога кнопок “Вверх”, “Вниз”, “Только слово цылеком”
options:=options + [frhideupdown,frhidewholeword] ;
execute; // запуск диалога
end;
end;
Теперь в OnFind компонента FindDialog1 вставляем следующий код:
with finddialog1 do begin
if frmatchcase in options
//поиск с учётом регистра
then Memo1.SelStart:=pos(findtext,copy(memo1.Lines.Text,spos+1,Length(memo1.Lines.text)))+spos-1
else
// поиск без учета регистра
Memo1.SelStart:=pos(ansilowercase(findtext),ansilowercase(copy(memo1.Lines.Text,spos+1,Length(memo1.Lines.text))))+spos-1;
if memo1.SelStart>=spos
then begin
//выделение найденного текста
memo1.SelLength:=Length(findtext);
//изменение начальной позиции поиска
spos:=memo1.SelStart + memo1.SelLength+1;
end
else
- 10 -