Название: Организация функции ПОИСК в Tmemo
Вид работы: доклад
Рубрика: Информатика и программирование
Размер файла: 14.15 Kb
Скачать файл: referat.me-137456.docx
Краткое описание работы: Представленный ниже код я использовал при написании текстового редактора. Всё вроде работает. Итак, на форме должны быть TMemo (Editor), TFindDialog (FindDialog) и TButton (Button).
Организация функции ПОИСК в Tmemo
Организация функции ПОИСК в TMemo
Предводителев Сергей
Представленный ниже код я использовал при написании текстового редактора. Всё вроде работает.
Итак, на форме должны быть TMemo (Editor), TFindDialog (FindDialog) и TButton (Button).
Сначала напишем обработчик нажатия на кнопку:
procedure TForm1.ButtonClick(Sender: TObject);
begin
FindDialog.Execute; // ОткрытиедиалогаПоиск
end;
В свойствах дилога должны быть True опции frHideWholeWord (Скрыть в диалоге выбор флажка "Только слово целиком"), frHideMatchCase (Скрыть в диалоге выбор флажка "С учётом регистра") и frDown (по-умолчанию направление поиска вниз), все остальные опции должны быть False.
В Editor свойство HideSelection должно быть False.
Теперь напишем обраобтчик на нажатие кнопки Найти далее в диалоге Поиск.
Должны быть описаны следующие переменные и метки:
var
SelPos,X,i:integer;
s,textE:string;
label 1;
Для начала посмотрим, в каком направлении нужно искать и соответственно выберем текст в котором надо искать:
if frDown in FindDialog.Options
then Editor.SelStart:=Editor.SelStart+Editor.SelLength; // этодля "поискдалее"
textE:=Editor.Text;
X:=Editor.SelStart+1;
if frDown in FindDialog.Options
then
textE:=Copy(textE,X,Length(textE)-X+1)
else
textE:=Copy(textE,0,X-1);
s:=FindDialog.FindText; // переменной s присваивается строка, которую нужно найти
Теперь напишем код собственно поиска:
if frDown in FindDialog.Options
then
{ код поиска вниз }
begin
SelPos := Pos(s,textE);
if SelPos > 0
then
begin
Editor.SelStart := SelPos + X - 2;
Editor.SelLength:=length(s);
end
else ShowMessage(pchar('Текст "'+ FindDialog.FindText+'" ненайден.'));
end
else
{ код поиска вверх }
begin
for i:=length(textE)-length(s) downto 1 do
if copy(textE,i,length(s))=s
then
begin
Editor.SelStart := i-1;
Editor.SelLength:=Length(s);
goto 1;
end;
ShowMessage(pchar('Текст "'+ FindDialog.FindText+'" ненайден.'));
1:
end;
Если строка найдена, то она выделяется, если нет, то выдаётся соответстующее сообщение.
Внимание! Запрещается перепечатка данной статьи или ее части без согласования с автором. Если вы хотите разместить эту статью на своем сайте или издать в печатном виде, свяжитесь с автором.
Похожие работы
-
Перетаскивание файлов на форму
В этой статья я расскажу, как реализовать перетаскивание файлов на форму... Рассмотрим на примере текстового редактора с многооконным интерфейсом, при перетаскивании файлов на главную форму которого будут открываться MDI-окна.
-
TClientSocket & TServerSocket
В C++Builder 6 для передачи какой-либо информации по сети удобнее всего использовать компоненты закладки Internet: TClientSocket и TServerSocket.
-
Высокоуровневые методы информатики и программирования
Целью курсовой работу является реализация криптографического алгоритма шифрования и дешифрования с использованием шифра Виженера.
-
Компонент программного комплекса для шифрования/дешифрования данных
Разработка программы, позволяющей реализовать шифрование и дешифрование текстового файла методом замены и методом перестановки. Требования к функциональным характеристикам, надежности, составу и параметрам технических средств ПО. Интерфейс пользователя.
-
Обработка одномерных массивов в среде программирования Lazarus
Форма программы для ввода и вывода массива в программной среде Lazarus. Характеристика главных недостатков Lazarus. Цикл для пропуска пробелов между словами. Результат обработки текстового редактора memo.text. Листинг и экранные формы заданной программы.
-
Разработка программы на языке Borland Object Pascal (Ide Borland Delphi)
Формирование текстового документа с именем goto.cpp., содержимое которого взято из русифицируемой справки MSDN по оператору безусловного перехода. Выбор оптимального алгоритма решения задачи, разработка интерфейса, отладка и тестирование программы.
-
Работа с файлам в Дельфи
В статье рассматриваются стандартные I/O операции с файлами, типичные ошибки и методы их предотвращения.
-
Среда программирования Delphi
Требования к аппаратным и программным средствам. Общая структура Среды Delphi. Основные элементы. Дополнительные элементы. Инструментальные средства. TButton, исходный текст, заголовки и Z-упорядочивание.
-
Обзор Палитры Delphi
В данной работе дается обзор стандартных и дополнительных компонентов из Палитры Компонент Delphi.
-
Creating graphic editor
Creation of the graphic program with Visual Basic and its common interface. The text of program code in programming of Visual Basic language creating in graphics editor. Creation of pictures in Visual Basic, some graphic actions with graphic editor.