![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Алгоритм поиска [D7, XP]
Nec © (2007-03-13 11:17:00)ДОБРОГО ВРЕМЕНИ СУТОК МНОГОУВАЖАЕМЫЕ МАСТЕРА!!
У меня к вам есть маленкий вопрос:
Для нахожднеия текста в RichEdit я использую следующий алголритм.
var
FoundAt: LongInt;
StartPos, ToEnd: Integer;
begin
with RichEdit1 do
begin
if SelLength <> 0 then
StartPos := SelStart + SelLength
else
StartPos := SelStart;
//StartPos := SelStart; //!!!
ToEnd := Length(Text) - StartPos;
FoundAt := FindText(FindDialog1.FindText, StartPos, ToEnd, [stMatchCase]);
if FoundAt <> -1 then
begin
SetFocus;
SelStart := FoundAt;
SelLength := Length(FindDialog1.FindText);
end;
end;
end;
Но этот алгоритм выделяет найденое но не переводит курсор нему!
Ксандр (2007-03-13 11:46:00) [1]Удалено модератором
Nec (2007-03-13 11:44:00) [2]Я имел в виду, что этот код выделяет найденный мною текст, но если если он находиться вне зоны видимости, то он не перемещяется к той строке на которой находиться
Сергей М. (2007-03-13 11:44:00) [3]http://delphi-faq.zoxt.net/a50.htm
Сергей М. (2007-03-13 11:37:00) [4]
> не переводит курсор
Позиционирование курсора никак не связано с упомянутым тобой поиском и выделением, это иной алгоритм, потому и "не переводит".