Форум: "Основная";
Текущий архив: 2004.02.25;
Скачать: [xml.tar.bz2];
ВнизКак скопировать выделенный текст... Найти похожие ветки
← →
MetalFan (2004-02-10 15:00) [0]...из TRichedit с сохранением форматирования не используя CopyToClipboard & PasteFromClipboard
Спасибо за внимание!
← →
Oyster (2004-02-10 15:20) [1]А чем эти не нравятся?
← →
MetalFan (2004-02-10 15:34) [2]ну если б нравился, я бы не спрашивал...
нужно!
если кто сталкивался, хелп плз!
← →
Семен Сорокин (2004-02-10 15:35) [3]RichEdit1.Lines.SaveToStream();
RichEdit1.Lines.LoadFromStream();
← →
MetalFan (2004-02-10 15:49) [4]пасиб...
но мне нужно ВЫДЕЛЕННЫЙ фрагмент текста с форматированием!!!
← →
MBo (2004-02-10 15:53) [5]EM_STREAMIN/OUT
← →
MetalFan (2004-02-10 15:54) [6]а примеров нет?
я как раз к STREAMIN/OUT и подошел...
← →
MetalFan (2004-02-10 15:55) [7]только в они по ходу работают с содержанием всего ричедита(
← →
MBo (2004-02-10 15:58) [8]SFF_SELECTION
← →
MetalFan (2004-02-10 16:00) [9]сорри за невнимательность) счас буду разбираться...
а как использовать callback функцию?
← →
MetalFan (2004-02-10 16:43) [10]неработает(
function AnEditCopyStreamCallBack(dwCookie: Longint; pbBuff: PByte;
cb: Longint; var pcb: Longint): Longint; stdcall;
var
lStrm:TStream;
begin
lStrm:=TStream(pointer(dwCookie));
pcb:=lStrm.Write(pbBuff,cb);
end;
function CopySelText(ARich: TRichEdit): TStream;
var
lEditStream: EDITSTREAM;
lWParam:integer;
begin
result:= TMemoryStream.Create;
zeroMemory(@lEditStream,SizeOf(EDITSTREAM));
lEditStream.pfnCallback:=AnEditCopyStreamCallBack;
lEditStream.dwCookie:= integer(result);
lWParam:= SF_RTFNOOBJS or SFF_SELECTION;
ARich.Perform(EM_STREAMOUT,lWParam, integer(@lEditStream));
end;
function AnEditPasteStreamCallBack(dwCookie: Longint; pbBuff: PByte;
cb: Longint; var pcb: Longint): Longint; stdcall;
var
lStrm:TStream;
begin
lStrm:=TStream(pointer(dwCookie));
pcb:=lStrm.Read(pbBuff,cb);
end;
function RichPasteStream(ARich:TRichEdit; aStream:TStream):boolean;
var
lEditStream: EDITSTREAM;
lWParam:integer;
begin
zeroMemory(@lEditStream,SizeOf(EDITSTREAM));
aStream.Seek(0,0);
lEditStream.pfnCallback:=AnEditPasteStreamCallBack;
lEditStream.dwCookie:= integer(aStream);
lWParam:= SF_RTF or SFF_SELECTION;
result:=ARich.Perform(EM_STREAMIN,lWParam, integer(@lEditStream))=0;
end;
← →
MBo (2004-02-10 16:48) [11]http://216.101.185.148/scripts/isapi.dll/article?id=20CEA97E&article=1079370
← →
MetalFan (2004-02-10 17:04) [12]big thnx!
работает)))
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.02.25;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.044 c