Текущий архив: 2003.04.03;
Скачать: CL | DM;
ВнизСохранение компонента Найти похожие ветки
← →
roadstar (2003-03-20 17:10) [0]Добрый день!
Есть проблема.
Имеется TreeView с нодами. Его необходимо сохранить в базе данных, а затем вычитать.
Может у кого есть какие нибудь идеи?
Заранее благодарен.
← →
MBo (2003-03-20 17:12) [1]Treeview.SavetoStream(BlobStream)
← →
RoadStar (2003-03-20 17:15) [2]Аха.
BlobStream - это случайно не класс в Дельфе?
Вобщем идея неплохая, спасибо, MBo
← →
RoadStar (2003-03-20 17:50) [3]А назад как?
Что-то Tree := TTreeView(BlobStream.ReadComponent(nil)) не работает.
Чё делать???
← →
icWasya (2003-03-20 17:55) [4]посмотри исходники
TCustomTreeView.DestroyWnd;
TCustomTreeView.CreateWnd;
там идея такая - когда разрушается окно TreeView, например Parent:=Nil, то все данные записываются в Stream, а когда окно восстанавливается, то из этого Stream`а всё читается обратно. разберись и переделай
← →
NAlexey (2003-03-20 18:02) [5]TReader, TWriter. Там кажется все есть.
← →
MBo (2003-03-20 18:07) [6]>А назад как?
Дык... treeview1.LoadFromStream , естественно
← →
RoadStar (2003-03-20 18:12) [7]>Дык... treeview1.LoadFromStream , естественно
А где ты его там видел?
← →
MBo (2003-03-20 18:26) [8]и в хелпе, и проверил :)
← →
malkolinge (2003-03-21 12:25) [9]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;
function StringToComponent(Value: string): TComponent;
var
StrStream: TStringStream;
BinStream: TMemoryStream;
begin
StrStream := TStringStream.Create(Value);
try
BinStream := TMemoryStream.Create;
try
ObjectTextToBinary(StrStream, BinStream);
BinStream.Seek(0, soFromBeginning);
Result := BinStream.ReadComponent(nil);
finally
BinStream.Free;
end;
finally
StrStream.Free;
end;
end;
Страницы: 1 вся ветка
Текущий архив: 2003.04.03;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.009 c