Советы по Delphi

       

Добавление строк в Memo


Быстро-грязный (по-русски "кривой") способ добавить в Memo дополнительный текст заключается в его загрузке в невидимый TMemo и последующем использовании следующим образом:

Memo1.Lines.AddStrings(Memo2.Lines);

Вам необходима функциональность второго TMemo, а не просто TStringList, поскольку первый инкапсулирует множество функций для работы с текстом. В противном случае вы могли бы загрузить файл в TSTringList и сами искать первые 255 символов каждого параграфа.

Чтобы было по-настоящему все удобно, необходимо создать временный TMemoStrings; к сожалению, TMemoStrings определен в секции implementation файла StdCtrls.PAS, и, таким образом, нам недоступен.

Бывает и так, что два временных TStringLists удобнее одного временного TMemo. Например, такой случай:

TS1 := TStringList.Create;TS2 := TStringList.Create;TS1.Assign(Memo1.Lines);Memo1.Lines.LoadFromFile('BULLRUN.TXT');TS2.Assign(Memo1.Lines);Memo1.Lines.Assign(TS1);Memo1.Lines.AddStrings(TS2);TS2.Free;TS1.Free;

Уф!! Гвоздь программы здесь - возможность разрывать строки в свойстве Memo Lines при добавлении НОВОГО текста. Итак, мы записываем существующий текст во временную переменную, считываем новый текст в Memo, снова передаем НОВЫЙ текст временной переменной, восстанавливаем оригинальный текст и, наконец, добавляем новый текст.

- Neil J. Rubenking [000802]



Содержание раздела