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

Вниз

Memo   Найти похожие ветки 

 
HunTeR_IzV ©   (2005-08-31 20:33) [0]

В поле Memo1 надо найти определенный текст, после которого сдвинуть каретку на заданное заранее колличество символов, скопировать идущий дальше текст в буфер, вставить в поле Memo2 и повторять до самого конца Memo1... Все найденные мной алгоритмы поиска по Memo ничего толком не дали :( Может, искал плохо. Помогите, плиз, хоть частично


 
Dispirited Zeqfreed   (2005-08-31 21:40) [1]

HunTeR_IzV ©   (31.08.05 20:33)

Вот код, делает то, что ты написал, насколько я это все понял:
function PervertedMemoSearching(const TextToFind : String;
                               const MemoSrc, MemoDst : TMemo;
                               const ClearDest : boolean = true) : boolean;
const
MoveBy_value = 3;
var
p : Integer;
MemoText : String;
begin
Result := false;
if ClearDest then MemoDst.Clear;

MemoText := MemoSrc.Text;

p := Pos(TextToFind, MemoText);
while (p > 0) do begin
 MemoSrc.SelStart := p + MoveBy_value + length(TextToFind);
 MemoSrc.SelLength := 0;

 MemoText := Copy(MemoText, MemoSrc.SelStart, length(MemoSrc.Text));
 MemoDst.Text := MemoDst.Text + MemoText;

 p := Pos(TextToFind, MemoText);
end;
end;


Теперь вопросы, которые у меня возникли:
Какой смысл в передвигании каретки? Если ты думаешь, что это необходимо для копирования или поиска - это не так.


> скопировать идущий дальше текст в буфер

Идущий дальше до конца текста в мемо или он дожен заканчиваться какой-то определенной последовательностью символов?


> Все найденные мной алгоритмы поиска по Memo

А какие алгоритмы ты нашёл?


 
Dispirited Zeqfreed   (2005-08-31 21:44) [2]

Dispirited Zeqfreed   (31.08.05 21:40) [1]
Ой. Хотел придать изменению позиции каретки хоть какой-то смысл - в итоге она не корректно будет двигаться относительно найденного текста в мемо. Но код, в общем, работает :) Т.е. если смысл именно в передвижении каретки, то нужно внести пару изменений ;))



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

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

Наверх




Память: 0.45 MB
Время: 0.012 c
1-1127125986
С.Игнатьев
2005-09-19 14:33
2005.10.09
Вложенное контекстное меню


14-1126699563
Daro
2005-09-14 16:06
2005.10.09
Есть такая проблема


1-1127117537
Wolferio
2005-09-19 12:12
2005.10.09
*.xls и *.doc (Внутрення структура файлов)


2-1125386126
Max4
2005-08-30 11:15
2005.10.09
Запуск приложения из программы


1-1127205297
Nait
2005-09-20 12:34
2005.10.09
как перехватить событие для Application (например х,y мышки)?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский