Форум: "Основная";
Текущий архив: 2005.02.06;
Скачать: [xml.tar.bz2];
Вниз
Добавление рисунков в TRxRichEdit Найти похожие ветки
← →
Eraser © (2005-01-18 22:17) [0]Проблема такая. Как в TRxRichEdit (не путать с TRichEdit) добавить графику (смайлики) без использования диалога вставки OLE объектов и желательно без использования буфера обмена?
И ещё вопрос ;-)
Допустим у меня имеется вставленный в TRxRichEdit рисунок (смайлик). Как мне его отличить от других объектов (можно ли присваивать объектам имя?)?
Кстати в ICQ используется именно RichEdit2.0, т.е. тот же оъект что и TRxRichEdit.
← →
Eraser © (2005-01-19 23:42) [1]Ниже представлен пример, который можно применить к RxRichEdit, RichEditEx, RichEdit98, и Microsoft RichTextBox (поставляемый с VB5+) не прибегая к использованию буфера обмена или OLE:
function BitmapToRTF(pict: TBitmap): string;
var
bi,bb,rtf: string;
bis,bbs: Cardinal;
achar: ShortString;
hexpict: string;
I: Integer;
begin
GetDIBSizes(pict.Handle,bis,bbs);
SetLength(bi,bis);
SetLength(bb,bbs);
GetDIB(pict.Handle,pict.Palette,PChar(bi)^,PChar(bb)^);
rtf := "{\rtf1 {\pict\dibitmap ";
SetLength(hexpict,(Length(bb) + Length(bi)) * 2);
I := 2;
for bis := 1 to Length(bi) do
begin
achar := Format("%x",[Integer(bi[bis])]);
if Length(achar) = 1 then
achar := "0" + achar;
hexpict[I-1] := achar[1];
hexpict[I] := achar[2];
Inc(I,2);
end;
for bbs := 1 to Length(bb) do
begin
achar := Format("%x",[Integer(bb[bbs])]);
if Length(achar) = 1 then
achar := "0" + achar;
hexpict[I-1] := achar[1];
hexpict[I] := achar[2];
Inc(I,2);
end;
rtf := rtf + hexpict + " }}";
Result := rtf;
end;
А вот пример использования этой функции:
{SS это TStringStream, RE это TRxRichEdit, а BMP это TBitmap содержащий картинку.}
SS := TStringStream.Create(BitmapToRTF(BMP));
RE.PlainText := False;
RE.StreamMode := [smSelection];
RE.Lines.LoadFromStream(SS);
SS.Free;
не работает ;-(
← →
Eraser © (2005-01-20 02:03) [2]Установил JVCL!!! Чуть не ох...л. Каким я раньше был дебилом...
;-(((
← →
ЮЮ © (2005-01-20 08:49) [3]...insert a Smiley image into a TRxRichEdit?
http://www.swissdelphicenter.ch/en/showcode.php?id=1147
...insert a image into a TRxRichEdit?
http://www.swissdelphicenter.ch/en/showcode.php?id=1332
← →
Eraser © (2005-01-20 18:15) [4]ЮЮ ©
Спасибо!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.02.06;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.034 c