Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.09.2009, 16:09   #1
Tomatos
Пользователь
 
Регистрация: 29.05.2009
Сообщений: 31
По умолчанию Как вставить кусок текста в текст

Здравствуйте

Нужно вставить кусок текста в определенное место в тексте

Делаю так:
Для начала нахожу нужное место в тексте, далее

Memo1.lines.strings[i]:=Memo1.lines.string[i]+'предложение1' ;
Memo1.lines.strings[i]:=Memo1.lines.string[i]+'предложение2' ;
Memo1.lines.strings[i]:=Memo1.lines.string[i]+'предложение3' ;
Memo1.lines.strings[i]:=Memo1.lines.string[i]+'предложение4' ;

Но в результате получаю строку состоящую из части первого предложения и последнего, думаю это из за ограничения в длинне строки в ТМемо

подскажите как можно организовать вставку текста (абзаца) в нужное место (середину) текста ?
Tomatos вне форума Ответить с цитированием
Старый 24.09.2009, 17:02   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
var i:integer;
begin
i:=0;
Memo1.lines.strings[i]:=Memo1.lines[i]+'предложение1' ;
Memo1.lines.strings[i]:=Memo1.lines[i]+'предложение2' ;
Memo1.lines.strings[i]:=Memo1.lines[i]+'предложение3' ;
Memo1.lines.strings[i]:=Memo1.lines[i]+'предложение4' ;
end;
Все в норме.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.09.2009, 17:28   #3
Tomatos
Пользователь
 
Регистрация: 29.05.2009
Сообщений: 31
По умолчанию

Вот такой пример текста:
Текст текст текст
Текст текст текст
Текст текст текст
"мой абзац"
текст текст текст
текст текст текст

При использовании выше указанного кода, у меня "мой абзац" вставляется не корректно (видимо он слишком длинный для строки в ТМемо). В итоге я имею начало первого предложения далее кусок последнего предложения и конец первого (начало_первого_предл _ кусок последнего _ конец_первого)
Tomatos вне форума Ответить с цитированием
Старый 24.09.2009, 17:37   #4
mosq
Пользователь
 
Регистрация: 28.08.2009
Сообщений: 90
По умолчанию

например как-то так

Код:
procedure TForm1.Memo2KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var s:string; i:integer;
label nothing;
begin
if EnterAsBR.checked=false then goto nothing;
if key<>13 then goto nothing;
i:=memo2.SelStart+1;
s:=memo2.text;
insert('<BR>',s, i);
memo2.text:=s;
memo2.SelStart:=i+3;
nothing:
end;
правда, я этот код использовал в контексте редактирования memo1. мне надо было в случае нажатия Enter вставлять <br>.

Последний раз редактировалось mosq; 24.09.2009 в 17:40. Причина: по-другому
mosq вне форума Ответить с цитированием
Старый 24.09.2009, 18:33   #5
Tomatos
Пользователь
 
Регистрация: 29.05.2009
Сообщений: 31
По умолчанию

Спасибо, разобрался...
Просто сделал через строковую переменную
Tomatos вне форума Ответить с цитированием
Старый 24.09.2009, 21:00   #6
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,527
По умолчанию

memo1.WordWrap:=false;
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в объект Memo вставить текст из файла Antyan-screammer Общие вопросы Delphi 6 09.08.2009 19:33
Как вставить в TListBox цветной текст? VintProg Общие вопросы Delphi 2 03.08.2009 11:46
Может кто знает как вставить текст в чужое поле ввода Dark_Elf Win Api 4 20.08.2008 13:47
Как скопировать текст в буфер обмена с одного edit-a и вставить в другой SeRhy Общие вопросы Delphi 2 26.07.2008 23:02
Вставить 'кусок' другой страницы N!ckeL HTML и CSS 5 25.06.2008 01:43