![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Поиск текста [D7, WinXP]
Sonic_gd © (2005-02-21 11:11:00)Я ищу текст в TRichEdit данным способом:
procedure TMain.N38Click(Sender: TObject);
begin
with Find do begin
Options:=Options+[frHideMatchCase]+[frHideWholeWord]+[frHideUpDown];
Execute;
end;
end;
procedure TMain.FindFind(Sender: TObject);
var
FoundAt: LongInt;
StartPos, ToEnd: Integer;
begin
with text do begin
{ begin the search after the current selection if there is one }
{ otherwise, begin at the start of the text }
if SelLength <> 0 then
StartPos := SelStart + SelLength
else
StartPos := 0;
{ ToEnd is the length from StartPos to the end of the text in the rich edit control }
ToEnd := Length(Text) - StartPos;
FoundAt := FindText(Find.FindText, StartPos, ToEnd, [stMatchCase]);
if FoundAt <> -1 then
begin
SetFocus;
SelStart := FoundAt;
SelLength := Length(Find.FindText);
end;
end;
end;
Но еслиискомый текст находится ниже видимой части текста, то текст не проручивается до нужной позиции. Как это сделать?
Sonic_gd (2005-02-21 17:38:00) [1]Всё, уже сам разобрался.
Sonic_gd (2005-02-21 17:06:00) [2]Если можно, то побыстрее. Это очень срочно.