Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизКопирование TTreeView Найти похожие ветки
← →
homeknight (2012-04-02 11:32) [0]Здравствуйте, в делфи новичек. Стоит задача копирования 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
Хочу просто записать в цикл копирование по индексу. Подскажите, пожалуйста, как это организовать.
← →
Cobalt © (2012-04-02 12:54) [1]пишешь рекурсивную функцию обхода дерева TTreeView
обходишь дерево исходного контрола, и добавляешь во второе дерево новые TTreeViewItem , копируя содержимое элементов методом Assign
← →
Cobalt © (2012-04-02 13:12) [2]Ой, че-то я вообще заумничал :)
TreeView1.Items.Assign(Form2.TtreeView2.Items);
полная замена всех элементов дерева
← →
homeknight (2012-04-02 13:45) [3]Ясно... а если передать это дерево в локальной сети из программы-клиента на программу-сервер, то функцию обхода вставлять в передачу строки сокетом?
Я мож че путаю... опыт работы с сокетом = 0. Буду рад помощи... А пока спасибо и за это. Ща буду тестить.
← →
Cobalt © (2012-04-02 14:15) [4]У элемента TreeView1.Items есть иные методы, как-то SaveToStream/LoadFromStream
← →
homeknight (2012-04-02 14:16) [5]Вобщем вопрос в следующем: как передать Item по сети. Какими компонентами пользоваться?
← →
homeknight (2012-04-02 14:17) [6]
> Cobalt © (02.04.12 14:15) [4]
> У элемента TreeView1.Items есть иные методы, как-то SaveToStream/LoadFromStream
Начинаю допирать)
← →
DimaBr © (2012-04-02 22:27) [7]Внимание! Здесь обсуждаются вопросы, связанные с разработкой компонентов, редакторов свойств, редакторов компонентов и экспертов IDE.
Вопросы по поиску и использованию готовых компонентов, редакторов или экспертов являются нарушением тематики и могут быть удалены.
← →
homeknight (2012-04-02 23:00) [8]Извиняюсь, не сообразил где создать топик. Вопрос с Передачей Items. Вобще, как можно сокетами передать TreeView? В сообщениях с итемами или можно как-то проще?
← →
homeknight (2012-04-02 23:01) [9]Извиняюсь, не сообразил где создать топик. Вопрос с Передачей Items. Вобще, как можно сокетами передать TreeView? В сообщениях с итемами или можно как-то проще?
← →
homeknight (2012-04-02 23:01) [10]-_- сорри за дабл
← →
Cobalt © (2012-04-03 09:44) [11]Так ты же начал допирать?
По сети данные передавать научился?
Сохранять TreeView в стрим?
ну и все, передавай стрим.
← →
bibip (2012-04-03 11:57) [12]procedure TForm1.Button1Click(Sender: TObject);
begin
TreeView1.SaveToFile("123");
Form2.TreeView2.LoadFromFile("123");
end;
← →
bibip (2012-04-03 12:00) [13]
procedure TForm1.Button1Click(Sender: TObject);
var
st: TMemoryStream;
begin
st:= TMemoryStream.Create;
TreeView1.SaveToStream(st);
st.Position:= 0;
Form2.TreeView2.LoadFromStream(st);
end;
← →
Юрий Зотов © (2012-04-03 12:56) [14]
> 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;
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.054 c