![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как скоприровать все из RichEdit1 в RichEdit2 [D3, Win95/98, WinXP]
TAG_SPB © (2002-12-26 18:46:00)имеется ввиду скопировать, сохраняя форматирование текста
я делаю так :
Clipboard.Clear;
RichEdit1.SetSelection(p_start,p_end,false);
RichEdit1.CopyToClipboard;
RichEdit2.SelLength:=0;
RichEdit2.PasteFromClipboard;
при многократных вызовах перестает копировать (грешу на PasteFromClipboard ??)
вызовы :
LockWindowUpdate(RichEdit2.Handle);
вызов ф-ии...
Clipboard.Clear;
LockWindowUpdate(0);
TAG_SPB (2002-12-26 21:25:00) [1]В первом приближении работает такой вариант :
----
Clipboard.Clear;
RichEdit1.SetSelection(p_start,p_end,false);
Application.ProcessMessages;
RichEdit1.CopyToClipboard;
RichEdit2.SelLength:=0;
RichEdit2.PasteFromClipboard;
Application.ProcessMessages;
----
вызов :
RichEdit2.Hide; // вместо LockWindowUpdate
while (нужно мне) do
begin
вызов вышеприведенной ф-ии ...
Clipboard.Clear;
Application.ProcessMessages;
end;
RichEdit2.Show;
TAG_SPB (2002-12-26 20:18:00) [2]Вот оно!!!
Отцы, КАК УЗНАТЬ, ЧТО RichEdit застабилизировался?
т.е. все изменения в нем - закончены.
Вставляю в разные места Application.ProcessMessages и картинка
меняется в лучшую сторону..
TAG_SPB (2002-12-26 20:03:00) [3]О! какая славная идея! Щас..
RxRichEdit1.SetSelection(s_pos,e_pos,false);
RichEdit2.SelAttributes:=RichEdit1.SelAttributes;
RichEdit2.SelText:=RichEdit1.SelText;
имеем :
1.отьезд с кодировкой (глюки ХР)
2.отьезд с атрибутами, т.к. они в пределах выделения _меняются_
gsu (2002-12-26 19:43:00) [4]А SelText+SelAttributes не подойдет ?
Anatoly Podgoretsky (2002-12-26 19:34:00) [5]Про куски не обратил внимание, так что совет не того.
TAG_SPB (2002-12-26 19:25:00) [6]Assign.. что-то не соображу, как, тем более, что хочется копировать _куски_ документа (p_start,p_end).
Анатолий, можно чуть пояснить?
Anatoly Podgoretsky (2002-12-26 19:00:00) [7]Метод Assign