Przesłanie zawartości treeview

0

Mam taki problem iż piszę aplikację sieciową i muszę zrealizować przesłanie zawartości komponentu Treeview z serwera do klienta za pomocą komponentów ServerSocket i ClientSocket. Próbowałem przesłać tą zawartość za pomocą polecenia SendBuff ale się nie udało. :-( Mam nadzieję że uda się to jakoś zrealizować.

0

Poniższym sposobem zgrasz drzewko TreeView do łańcucha, z którego potem możesz je odtworzyć:


Var
  Lancuch: String; //przechowuje zawartość drzewka TreeView


//procedura zapisująca drzewko TreeView w łańcuchu

 Procedure ZapiszTreeView (TV: TTreeView; Var S: String);
  Var
   SS: TStringStream;
 Begin
   SS:=TStringStream.Create('');
   try
     TV.SaveToStream(SS); //zgranie drzewka TreeView do Stream'u
     S:=SS.DataString; //przekształcenie Stream'u do stringa
   finally
     SS.Free;
   end;
 End;

//procedura odtwarzająca drzewko z łańcucha 

Procedure CzytajTreeView (S: String;  TV: TTreeView);
Var
 SS:TStringStream;
begin
  SS:=TStringStream.Create(S); //przekształcenie stringa z powrotem do Stream'u
  try
    TV.LoadFromStream(SS); //odtworzenie drzewka TreeView ze Stream'u
  finally
    SS.Free;
  end;
end;


// użycie  obu procedur

procedure TForm1.ButtonZapiszClick(Sender: TObject);
Begin
  ZapiszTreeView (TreeView_Zrodlo, Lancuch);
End;


procedure TForm1.ButtonCzytajClick(Sender: TObject);
Begin
 CzytajTreeView(Lancuch, TreeView_Docelowe);
End;

Pzdr.
Marogo

0

taka drobna uwaga - stream to nie łańcuch tylko źródło

0

Stream:
1 potok; strumień (np. danych)
2 strumień; rzeczka; potok
3 fala (np. fala protestów)
4 seria

0

miało być strumień nie źródło... Muszę przestać pisać posty o takich późnych godzinach

1 użytkowników online, w tym zalogowanych: 0, gości: 1