![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Бредовае сохранение форматирования текста [D7, WinXP]
TBeginner © (2005-12-05 15:41:00)Здравствуйте!
Есть такая проблема:
пользуюсь функцией INSERT, то есть выделенную часть текста дублирую при помощи этой вот функ. всё отлично работает когда выделается либо строка либо что-то с одной строки (слово, к примеру) но вот когда выделяешь несколько строк, и вызываешь эту функ., то вместо выделенных, нескольких строк вставляется одна, и вместо перехода на следующую строку стаят два непонятных символа (два прямоугольника).
Как можно сохранить форматирование при использовании данной функции? Помогите если можно.
Digitman (2005-12-06 16:32:00) [1]
> Нужно что бы оределённый текст был сначала выделенного текста
> и вконц
галиматья полная ..
ты двух слов связать не в состоянии ?
ведь тебе же шаблон для ответа дан в [18] !
TBeginner (2005-12-06 13:28:00) [2]Нужно что бы оределённый текст был сначала выделенного текста и вконце...
Leonid Troyanovsky (2005-12-06 13:11:00) [3]
> TBeginner © (06.12.05 13:00) [17]
> А можно иначе решить эту проблу?
Опиши задачу просто, с использованием картинки.
Например, есть такое содержимое мемо
aaaa_аaaaaa
aaaaaaaaaa
Я хочу вставить в позицию помеченную символом _
(или иным образом определенную позицию) строки:
bbbb
bbbb
bbbb
чтобы получилось так:
aaaabbbb
bbbb
bbbbaaaaaa
aaaaaaaaaa
--
Regards, LVT.
TBeginner (2005-12-06 13:00:00) [4]А можно иначе решить эту проблу?
Leonid Troyanovsky (2005-12-06 12:58:00) [5]
> TBeginner © (06.12.05 12:26) [15]
> и возник вопрос который я задал изночально
[12]
--
Regards, LVT.
TBeginner (2005-12-06 12:26:00) [6]и возник вопрос который я задал изночально
Leonid Troyanovsky (2005-12-06 11:30:00) [7]
> TBeginner © (06.12.05 11:21) [13]
> Этот компонент я взял с сайта: tmssoftware.com
И?
--
Regards, LVT.
TBeginner (2005-12-06 11:21:00) [8]Этот компонент я взял с сайта: tmssoftware.com
Leonid Troyanovsky (2005-12-05 18:41:00) [9]
> TBeginner © (05.12.05 18:28) [11]
> Leonid Troyanovsky что-то не понятно?
В таких случаях некоторые рисуют свое мемо (TADVMemo - это мемо?)
до того, место вставки, и после того, а также, отдельно, что они хотели
вставить. Без затей, т.е., без всяких InsertComponent и функций.
--
Regards, LVT.
TBeginner (2005-12-05 18:28:00) [10]Leonid Troyanovskyчто-то не понятно? то есть процедура вызывает фун-ию с параметрами, а фун-ия вставляет в TADVMemo переработанный текст.
Leonid Troyanovsky (2005-12-05 18:19:00) [11]
> han_malign © (05.12.05 18:02) [6]
> - TMemo это тот же TEdit, только с флагом multiline...
TMemo - это тот же TCustomEdit. Или, скажем, EDIT.
Т.е., намекал я именно на multline.
> А Lines.Insert - вставляет строку, при этом парсинга по
Про оный метод я представить себе мог, как и, например,
про процедуру Insert.
Однако, как я и предполагал, имелось ввиду нечто совсем другое - [4],
что уже никто представить себе не мог.
Посоветовать же автору мне в этом случае совсем нечего, бо я
сомневаюсь в том, что хоть чего-то понял в оной постановке.
--
Regards, LVT.
TBeginner (2005-12-05 18:11:00) [12]упсс, сорри, не сказал что используется TADVMemo...
han_malign (2005-12-05 18:05:00) [13]
> memo.InsertTextAtXY
- это откуда такое чудо?
TBeginner (2005-12-05 18:04:00) [14]
> a := strB;
> d := strE;
>
> И чего это ?
это переменные (глобальные)
han_malign (2005-12-05 18:02:00) [15]
> не TEdit, а, скажем, TMemo или TRichEdit.
- TMemo это тот же TEdit, только с флагом multiline...
А Lines.Insert - вставляет строку, при этом парсинга по разделителям в отличие от CommaText, DelimitedText и Text не происходит.
Можно посоветовать использовать промежуточный TStringList(.Text:= CopyStr(Memo.Text, Memo.SelStart, Memo.SelLength)) и поэлементную вставку(но появится лишний перевод строки), или промежуточную строку:
str:= memo.Text;
Insert(CopyStr(str, Memo.SelStart, Memo.SelLength), str, SelStart + SelLength);
memo.Text:= str;
Jeer (2005-12-05 17:54:00) [16]a := strB;
d := strE;
И чего это ?
TBeginner (2005-12-05 17:52:00) [17]
a := strB;
d := strE;
s:=strB+memo.Selection+strE;
memo.InsertTextAtXY(s,memo.CurX,memo.CurY);
вызов вышеизложенного:
InsertComponent(nil,'текст1','текст2');
Amoeba (2005-12-05 17:35:00) [18]Код в студию!
Tbeginner (2005-12-05 17:19:00) [19]В качестве приёмника и стоит TMemo...
Leonid Troyanovsky (2005-12-05 15:55:00) [20]
> TBeginner © (05.12.05 15:41)
> Как можно сохранить форматирование при использовании данной
> функции?
Собс-но, не могу представить, что это за функция,
но могу предложить использовать в качестве приемника не TEdit,
а, скажем, TMemo или TRichEdit.
--
Regards, LVT.