Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.27;
Скачать: CL | DM;

Вниз

Помогите сделать поиск в RichEdit!   Найти похожие ветки 

 
zac   (2004-06-15 06:24) [0]

Нужно организовать поиск слова в RichEdit. Т.е. задается набор символов, например, в Edit, нажимается кнопка и ищется этот набор в RichEdit (в котором загружен большой текст). Если слово найдено, то оно выделяется. Короче, обычная система поиска.
Пытаюсь сделать это так:
С помощью Richedit.FindText ищу слово (получаю позицию), потом через Richedit.SelStart и Rhedit.SelLength выделяю его. Проблема в том, что текста много и если слово где-то внизу, то автоматической прокрутки до него не происходит... :о(
Как это побороть? Или может есть более удачный способ поиска?


 
ZEE   (2004-06-15 11:07) [1]

а что Richedit.FindText с русским текстом работает нормально?
я делал так:
var i,ss:integer;
   s:string;
...
i:=RichEdit1.SelStart+1;
s:=RichEdit1.Text;
// для того чтобы искать следуещее такое же слово
// начинаем искать со следующей позиции
// после выделенной
delete(s,1,i);
if pos(AnsiUpperCase(Edit1.Text),AnsiUpperCase(s))>0 then
begin
 ss:=pos(AnsiUpperCase(Edit1.Text),AnsiUpperCase(s))+i-1;
 RichEdit1.SelStart:=s;
 RichEdit1.SelLength:=length(Edit1.Text);
end;


 
zac   (2004-06-15 13:46) [2]

ZEE (15.06.04 11:07), У меня он с русским текстом нормально работает. Но все равно, когда он находит и выделяет слово, то он не прокручивает текст до него. Поэтому если слово где-то внизу по тексту, то не видно, что оно найдено и выделено.



Страницы: 1 вся ветка

Текущий архив: 2004.06.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.055 c
6-1083856173
shek
2004-05-06 19:09
2004.06.27
NMFTP


14-1086057675
ИМХО
2004-06-01 06:41
2004.06.27
Русские теннисистки рулят!


9-1078425571
Creep
2004-03-04 21:39
2004.06.27
Уменя спрайты крутятся в таймере и на разных компах разная скорос


14-1086469407
KilkennyCat
2004-06-06 01:03
2004.06.27
Конкурс: Стих паскальный. Приз - Токай Ассу 3 пут. 1996 года


8-1081451647
SDV
2004-04-08 23:14
2004.06.27
Помещение изображения в поток памяти