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

Вниз

Можно ли сделать Append форматированого текста в Richedit?   Найти похожие ветки 

 
Cut'gun ©   (2006-03-01 13:15) [0]

Здраствуйте!
Столкнулся с такой проблемой: В Richeidt для получения форматированого текста имеется метод LoadFromStream который заменяет всё содержимое на содержимое потока.  Можно ли сделать каким либо образом Append форматированого текста к уже имеющемуся?
Я пока нашёл решение с использованием 2ух Richedit и Clipboard, как приёмника текста. Может кто сталкивался и знает лучшее решение?


 
MBo ©   (2006-03-01 13:36) [1]

Через EM_STREAMIN/EM_STREAMOUT


 
Cut'gun ©   (2006-03-01 13:58) [2]

Большое спасибо... прошу прощения за назаойливость, нельзя привести пример кода RichEdit.Perform() не совсем понимаю как совместить   EM_STREAMIN/EM_STREAMOUT с флагом SFF_SELECTION и каким должен быть lParam. Заранее большое спасибо.


 
MBo ©   (2006-03-01 14:06) [3]

procedure TForm1.FormCreate(Sender: TObject);
begin
 richedit1.Lines.Text := "111222333444";
 richedit2.Lines.Text := "aaabbbccc";
 richedit2.selstart := 3;
 richedit2.sellength := 3;
 richedit1.selstart := 3;
 richedit1.sellength := 3;
 richedit2.SelAttributes.Size := 16;
 richedit2.SelAttributes.Color := clBlue;
end;

function EditStreamInCallback(dwCookie: Longint; pbBuff: PByte;
 cb: Longint; var pcb: Longint): DWORD; stdcall;
begin
 pcb := TStream(dwCookie).Read(pbBuff^, cb);
 Result := 0; // Ord(pcb <> cb);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
 ms: TMemoryStream;
 est: TEditStream;
begin
 Richedit2.PlainText := False;
 ms := TMemoryStream.Create;
 Richedit2.Lines.SaveToStream(ms);
 ms.Position := 0;
 est.dwCookie := Integer(ms);
 est.dwError := 0;
 est.pfnCallback := @EditStreamInCallBack;
 SendMessage(RichEdit1.Handle, EM_STREAMIN, SF_RTF or SFF_SELECTION,
   LPARAM(@est));
 ms.Free;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.064 c
1-1140970826
JIurasdfsdf
2006-02-26 19:20
2006.04.02
Выделение элемента в Treeview


15-1142060282
mmms
2006-03-11 09:58
2006.04.02
Где в Москве можно найти широкополосный доступ интернет


2-1142511533
KyRo
2006-03-16 15:18
2006.04.02
Отключить ошибку в ини файле


15-1142031161
denisych
2006-03-11 01:52
2006.04.02
Развод клиента постоянным администрированием БД


15-1142009403
Новичоккк
2006-03-10 19:50
2006.04.02
Почему может тормозить копирование и прочее?