![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Копирование TTreeView [D7]
homeknight © (2012-04-02 11:32:00)Здравствуйте, в делфи новичек. Стоит задача копирования Items строк из одного TTreeView в другой.
Код типа
procedure TForm1.Button1Click(Sender: TObject);
var itindex:integer;
begin
itindex:=0;
TreeView1.Items.Item[itindex]:=Form2.TtreeView2.Items.Item[itindex];
end;
выдал ошибку Unit1.pas(34): Cannot assign to a read-only property
Хочу просто записать в цикл копирование по индексу. Подскажите, пожалуйста, как это организовать.
Юрий Зотов (2012-04-03 12:56:00) [1]
> bibip (03.04.12 12:00) [13]
procedure TForm1.Button1Click(Sender: TObject);
var
st: TMemoryStream;
begin
st:= TMemoryStream.Create;
try
TreeView1.SaveToStream(st);
st.Position:= 0;
Form2.TreeView2.LoadFromStream(st);
finally
st.Free;
end;
end;
bibip (2012-04-03 12:00:00) [2]
procedure TForm1.Button1Click(Sender: TObject);
var
st: TMemoryStream;
begin
st:= TMemoryStream.Create;
TreeView1.SaveToStream(st);
st.Position:= 0;
Form2.TreeView2.LoadFromStream(st);
end;
bibip (2012-04-03 11:57:00) [3]procedure TForm1.Button1Click(Sender: TObject);
begin
TreeView1.SaveToFile('123');
Form2.TreeView2.LoadFromFile('123');
end;
Cobalt (2012-04-03 09:44:00) [4]Так ты же начал допирать?
По сети данные передавать научился?
Сохранять TreeView в стрим?
ну и все, передавай стрим.
homeknight (2012-04-02 23:01:00) [5]Извиняюсь, не сообразил где создать топик. Вопрос с Передачей Items. Вобще, как можно сокетами передать TreeView? В сообщениях с итемами или можно как-то проще?
homeknight (2012-04-02 23:01:00) [6]-_- сорри за дабл
homeknight (2012-04-02 23:00:00) [7]Извиняюсь, не сообразил где создать топик. Вопрос с Передачей Items. Вобще, как можно сокетами передать TreeView? В сообщениях с итемами или можно как-то проще?
DimaBr (2012-04-02 22:27:00) [8]Внимание!Здесьобсуждаются вопросы, связанные с разработкойкомпонентов, редакторов свойств, редакторов компонентов и экспертов IDE.
Вопросы по поискуи использованиюготовых компонентов, редакторов или экспертов являются нарушениемтематики и могут быть удалены.
homeknight (2012-04-02 14:17:00) [9]
> Cobalt © (02.04.12 14:15) [4]
> У элемента TreeView1.Items есть иные методы, как-то SaveToStream/LoadFromStream
Начинаю допирать)
homeknight (2012-04-02 14:16:00) [10]Вобщем вопрос в следующем: как передать Item по сети. Какими компонентами пользоваться?
Cobalt (2012-04-02 14:15:00) [11]У элемента TreeView1.Items есть иные методы, как-то SaveToStream/LoadFromStream
homeknight (2012-04-02 13:45:00) [12]Ясно... а если передать это дерево в локальной сети из программы-клиента на программу-сервер, то функцию обхода вставлять в передачу строки сокетом?
Я мож че путаю... опыт работы с сокетом = 0. Буду рад помощи... А пока спасибо и за это. Ща буду тестить.
Cobalt (2012-04-02 13:12:00) [13]Ой, че-то я вообще заумничал :)
TreeView1.Items.Assign(Form2.TtreeView2.Items);
полная замена всех элементов дерева
Cobalt (2012-04-02 12:54:00) [14]пишешь рекурсивную функцию обхода дерева TTreeView
обходишь дерево исходного контрола, и добавляешь во второе дерево новые TTreeViewItem , копируя содержимое элементов методом Assign