Главная страница
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.042 c
15-1142001294
_uw_
2006-03-10 17:34
2006.04.02
Одно ли и то же разворот и выезд на встречную полосу?


2-1142866409
serjkp
2006-03-20 17:53
2006.04.02
FormCreate...


3-1139291911
VitV
2006-02-07 08:58
2006.04.02
Delphi+access. Проблема загрузки рисунка.


2-1142872872
AlexLines
2006-03-20 19:41
2006.04.02
Что это за PrintDialog?


3-1139565329
Polevi
2006-02-10 12:55
2006.04.02
Приходный ордер форма № М-4