Главная страница
    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.067 c
2-1337453528
novichek
2012-05-19 22:52
2013.03.22
показать форму на втором мониторе


3-1287558732
Sergey2
2010-10-20 11:12
2013.03.22
LinkedServer на mssql 2008


2-1340983618
AntonMos
2012-06-29 19:26
2013.03.22
фильтр DBGRIDEH


15-1351936374
xayam
2012-11-03 13:52
2013.03.22
Google App Engine (GAE)


15-1344639808
Jonis_84
2012-08-11 03:03
2013.03.22
почему если убираешь строки про реестр nod32 ругается





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский