Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];

Вниз

Вопрос по 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;
Скачать: [xml.tar.bz2];

Наверх









Память: 0.83 MB
Время: 0.054 c
1-1101810588
aleksey
2004-11-30 13:29
2004.12.12
Как печатать текст в ячейках StringGrid заглавными буквами ?


14-1100909165
Soft
2004-11-20 03:06
2004.12.12
Письмо в госдуму


1-1101466977
Manfred8
2004-11-26 14:02
2004.12.12
Запрет вставки из буфера в Edit


14-1101104384
Sash
2004-11-22 09:19
2004.12.12
w98 wxp


1-1101895430
denis24
2004-12-01 13:03
2004.12.12
listbox->event





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