Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.12;
Скачать: CL | DM;

Вниз

Вопрос по TreeView   Найти похожие ветки 

 
Рафик   (2004-11-26 08:35) [0]

Подскажите пожалута, у меня есть база состоящия из двух полей наименования и код, в дерево мне нужно вывести только наименование (наименование не является уникальным параметром) потом в дереве пользователь выбирает какое либо наименование и по нему должна выводиться информация, как мне определить код выбранного им наименования, ведь я ж не знаю какое он может выбрать.


 
jack128 ©   (2004-11-26 08:40) [1]

сохроняй ID в поле Data.

TreeView.Items.AddChildObject(SameParentNode, SameDataSet.FieldByName("SameStrField").AsString, Pointer(SameDataSet.FieldByName("ID").AsInteger));
и соответственно получаешь ID

ID := Integer(SameNode.Data);


 
Рафик   (2004-11-26 09:56) [2]

Спасибо


 
Рафик   (2004-11-26 10:22) [3]

А как мне потом достать оттуда этот параметр!!!


 
Rouse_ ©   (2004-11-26 10:23) [4]

> А как мне потом достать оттуда этот параметр!!!
ну тебе же показали:


> и соответственно получаешь ID
>
> ID := Integer(SameNode.Data);


 
Рафик   (2004-11-26 10:56) [5]

Вот так я записываю
dl:=DataModule2.ZKart.RecordCount;
DataModule2.ZKart.First;
for dl1:=0 to dl-1 do
begin
 str:=DataModule2.ZKart.FieldByName("Name").asstring;
 id:=DataModule2.ZKart.FieldByName("Kod").asinteger;
 node1:=TreeView1.Items.AddChildObject(node,str,Pointer(Id));

 DataModule2.ZKart.Next;
end;
И вот так получаю
но самое интересное
id:=Integer(node1.Data);

И почему то ID у меня всегда равна семи чтобы я не выделил. Хотя цифры семь там и в помине нигде нету.


 
Rouse_ ©   (2004-11-26 11:03) [6]

> И почему то ID у меня всегда равна семи чтобы я не выделил.
потомучто Pointer(Id) - это указатель на ID и при следующем проходе цикла ты его затираешь этот самый ID.
Сделай вот так:
var
 ID: array of Byte;
 IDCount: Integer;
...
 
Inc(IDCount);
SetLength(ID, IDCount);
ID[IDCOunt - 1]:=DataModule2.ZKart.FieldByName("Kod").asinteger;
node1:=TreeView1.Items.AddChildObject(node,str,Pointer(ID[IDCOunt - 1]));


 
Rouse_ ©   (2004-11-26 11:07) [7]

Эээ, не про то подумал...
node1.Data у тебя это что, как ты ее получаешь?


 
Рафик   (2004-11-26 11:11) [8]

Так на клик мышки



Страницы: 1 вся ветка

Текущий архив: 2004.12.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.028 c
6-1096757015
Klopan
2004-10-03 02:43
2004.12.12
Потоки


3-1100183875
msguns
2004-11-11 17:37
2004.12.12
Конструктор запросов


8-1095138488
resha
2004-09-14 09:08
2004.12.12
Обработка звука!!!


14-1100768556
ИМХО
2004-11-18 12:02
2004.12.12
Brain drain


3-1100096254
Andriy Tysh
2004-11-10 17:17
2004.12.12
Как вывести отчёт КвикРепортом из КлиентДатаСета только те записи