Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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.058 c
2-1329518473
теркин
2012-02-18 02:41
2013.03.22
Удаление элементов косвенно рекурсивных списков


6-1259931784
Kanaris
2009-12-04 16:03
2013.03.22
Как реализовать "ретранслятор" запросов через сокеты?


15-1342612759
Кто б сомневался
2012-07-18 15:59
2013.03.22
Дженерики - примеры где с ними было бы лучше


15-1337667020
AV
2012-05-22 10:10
2013.03.22
Oracle/ Надо прибить сессии, использующие пакет


2-1343895603
ProgRAMmer Dimonych
2012-08-02 12:20
2013.03.22
DisconnectEx - как использовать?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский