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

Вниз

Свойство ObjectText   Найти похожие ветки 

 
vixic ©   (2003-12-22 14:52) [0]

Начну с примера! :-)
Пример:
Положим на форму TImage, загрузим в него картинку щёлкнем правой кнопкой на форме выберем View as Text и видим что в свойстве Picture объекта TImage находится рисунок в HEX виде!
Вопрос:
как зделать такое свойство чтоб в него можно было сохранить файл и также как в TImage показывался его HEX код?
СПАСИБО!


 
REA ©   (2003-12-22 15:15) [1]

См. в Help ObjectTextToBinary и наоборот


 
Юрий Зотов ©   (2003-12-22 15:20) [2]

ObjectTextToBinary вот так просто не поможет.

1. Замещаете DefineProperties, пишете ReadProc и WriteProc.
2. В ReadProc и WriteProc преобразуете бинарный поток в строку или обратно.

Для примера см., как сохраняется картинка у TImage.


 
REA ©   (2003-12-22 15:31) [3]

Ну вот же: (Или это не то?)

function ComponentToString(Component: TComponent): string;

var
BinStream:TMemoryStream;
StrStream: TStringStream;
s: string;
begin
BinStream := TMemoryStream.Create;
try
StrStream := TStringStream.Create(s);
try
BinStream.WriteComponent(Component);
BinStream.Seek(0, soFromBeginning);
ObjectBinaryToText(BinStream, StrStream);
StrStream.Seek(0, soFromBeginning);
Result:= StrStream.DataString;
finally
StrStream.Free;
end;
finally
BinStream.Free
end;
end;


 
Юрий Зотов ©   (2003-12-22 15:43) [4]

> REA © (22.12.03 15:31) [3]

Это то, но все эти функции бессильны до тех пор, пока мы не научили САМ объект сохранять свои нестандартные свойства. Для этого и служит DefineProperties.



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

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

Наверх




Память: 0.47 MB
Время: 0.035 c
14-25534
Onyx
2003-12-19 11:04
2004.01.09
Win2k


14-25577
JibSkeart
2003-12-17 13:11
2004.01.09
тест для курильшиков :)


3-25203
loki128
2003-12-12 16:46
2004.01.09
Считать значения полей записи


6-25487
gfew
2003-11-06 12:09
2004.01.09
Кодинг сокетов юзая winsock2


1-25393
Sasha_M
2003-12-24 19:30
2004.01.09
Как в Tlistview при нажатии клавиши отметить выбранный