Помощь - Поиск - Пользователи - Календарь
Полная версия: Treeview & Listbox
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Делфи
18192123
Есть ListBox1, ListBox2, ListBox3, каждый из которых содержит некоторые записи.
По нажатию на кнопку требуется занести в TreeView1 эти записи...

TreeView1.Items.Clear;

TreeView1.Items.Add(nil,'цех1');
begin
for i:=0 to ListBox1.Count-1 do
TreeView1.Items.AddChild(TreeView1.Items.Item[i],listbox1.Items.Strings[i]);
end;

TreeView1.Items.Add(nil,'цех2');
begin
for j:=0 to ListBox2.Count-1 do
TreeView1.Items.AddChild(TreeView1.Items.Item[j],listbox2.Items.Strings[j]);
end;

TreeView1.Items.Add(nil,'цех3');
begin
for k:=0 to ListBox3.Count-1 do
TreeView1.Items.AddChild(TreeView1.Items.Item[k],listbox3.Items.Strings[k]);
end;


т.е. в итоге должно получиться
+цех1
....
....
....
+цех2
....
....
....
+цех3
....
....
....

А получается, что все записи попадают в цех1...
Объясните пожалуйста, как достичь желаемого результата?
volvo
Цитата(18192123 @ 7.01.2009 22:41) *
Объясните пожалуйста, как достичь желаемого результата?
Вот так, например:
var node: TTreeNode;
...
TreeView1.Items.Clear;

node := TreeView1.Items.Add(nil,'цех1');
for i:=0 to ListBox1.Count-1 do
TreeView1.Items.AddChild(node,listbox1.Items.Strings[i]);

node := TreeView1.Items.Add(nil,'цех2');
for j:=0 to ListBox2.Count-1 do
TreeView1.Items.AddChild(node,listbox2.Items.Strings[j]);

node := TreeView1.Items.Add(nil,'цех3');
for k:=0 to ListBox3.Count-1 do
TreeView1.Items.AddChild(node,listbox3.Items.Strings[k]);


Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.