Форум: "Начинающим";
Текущий архив: 2006.02.05;
Скачать: [xml.tar.bz2];
ВнизКак в Ричедит узнать и перейти на выделеную в нем строку? Найти похожие ветки
← →
Kostik (2006-01-19 19:17) [0]Вобщем я Файнддиалогом ищу текст в ричедите. Он его нааходит но не прокручивает текст а только выделяет. Как перейти на выделеную строку??
ищу так :
procedure TForm1.FindDialog1Find(Sender: TObject);
var
FoundAt: LongInt;
StartPos, ToEnd: Integer;
Begin
with RichEdit2 do
begin
if SelLength <> 0 then
StartPos := SelStart + SelLength
Else
StartPos := 0;
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;
← →
Kostik (2006-01-19 19:34) [1]ну, или как ГРАМОТНО искать, выделять и переходить на выделеный текст в ричедите??
← →
begin...end © (2006-01-19 19:45) [2]> Kostik (19.01.06 19:17)
После установки SelLength добавьте такой код: Perform(EM_SCROLLCARET, 0, 0).
Интересно, что EM_SCROLLCARET должно автоматически посылаться при изменении SelLength (см. TCustomRichEdit.SetSelLength), однако прокручивания действительно почему-то не происходит...
← →
Kostik (2006-01-20 07:18) [3]>begin...end
Большое спасибо!
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.02.05;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.011 c