Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Neumann
Зарегистрирован: 19.12.2004 Сообщения: 14
|
Добавлено: Сб Авг 26 2006 15:34 Заголовок сообщения: Поиск по Delphiйски!!! |
|
|
Прива всем !!! Кто знает как искать введённую константу поиска не испльзуя FingDialog, а искать прямо в RichEdit и результат выводить прямо в Label'е!!! |
|
Вернуться к началу |
|
|
sniper::p
Зарегистрирован: 04.10.2005 Сообщения: 237 Откуда: rus/73
|
Добавлено: Пн Авг 28 2006 20:59 Заголовок сообщения: |
|
|
Идешь по всем строкам, и ищешь подстроку в каждой строке _________________ Нет предела совершенствованию |
|
Вернуться к началу |
|
|
Neumann
Зарегистрирован: 19.12.2004 Сообщения: 14
|
Добавлено: Вт Авг 29 2006 06:47 Заголовок сообщения: |
|
|
sniper::p писал(а): | Идешь по всем строкам, и ищешь подстроку в каждой строке |
Конечно, по всем строкам!!! |
|
Вернуться к началу |
|
|
sniper::p
Зарегистрирован: 04.10.2005 Сообщения: 237 Откуда: rus/73
|
Добавлено: Пт Сен 01 2006 23:27 Заголовок сообщения: |
|
|
Код: | void __fastcall TForm1::FindDialog1Find(TObject *Sender)
{
int FoundAt, StartPos, ToEnd;
// начать поиск после текущего выделения,
// если таковое есть
// иначе начать поиск с начала текста
if (RichEdit1->SelLength)
StartPos = RichEdit1->SelStart + RichEdit1->SelLength;
else
StartPos = 0;
// ToEnd - это длина текста, начиная с текущего выделения
// до конца текста в RichEdit
ToEnd = RichEdit1->Text.Length() - StartPos;
FoundAt = RichEdit1->FindText(WhatFind, StartPos, ToEnd, TSearchTypes()<< stMatchCase);
if (FoundAt != -1)
{
RichEdit1->SetFocus();
RichEdit1->SelStart = FoundAt;
RichEdit1->SelLength = FindDialog1->FindText.Length();
}
} | Здесь WhatFind - строковая переменная, в которой содержится необходимая строка. Прошу прощения за С++, он мне ближе, а переделать на Паскаль - лень Ключевой момент здесь - вызов RichEdit->FindText (см. справку).
PS Код выдернут прямо из справки Билдера _________________ Нет предела совершенствованию |
|
Вернуться к началу |
|
|
|