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

Вниз

Не могу получить значение   Найти похожие ветки 

 
ruslan_as   (2010-06-11 09:37) [0]

Заполняю TreeView1:

procedure TfmNSIPodrazd.Button1Click(Sender: TObject);
var Node, NodeChild :TTreeNode;
begin
TreeView1.Items.Clear;
DM.PODRAZD.First;

while not DM.PODRAZD.Eof do
begin
Node:=TreeView1.Items.AddObject(nil,  DM.PODRAZDN_PD.AsString, Pointer(DM.PODRAZDK_PD.AsString));
if DM._podrazd.RecordCount>0
then begin
 while not DM._podrazd.Eof do
 begin
   TreeView1.Items.AddChildObject(Node,DM._podrazdN_PD.AsString,Pointer(DM._podrazd K_PD.AsString));//Добавляет ветку
   DM._podrazd.Next;
 end;
end;

DM.PODRAZD.Next;
end;//while not DM.PODRAZD.Eof do

end;

Дерево создалось.
Пытаюсь  его получить Data в событии Expanded

procedure TfmNSIPodrazd.TreeView1Expanded(Sender: TObject;
begin
HSShowMessage(IntToStr(Integer(TreeView1.Items.Item[1].Data )));
end;
end;


 
ruslan_as   (2010-06-11 09:38) [1]

Получаю какое-то левое значение (большое число)
Где я  ошибаюсь?


 
MBo ©   (2010-06-11 09:45) [2]

...Pointer(DM.PODRAZDK_PD.AsString));
указывает куда попало (на временные строки, локальные в данной процедуре). Под каждую строку нужно выделять память.

(IntToStr(Integer(TreeView1.Items.Item[1].Data )));
Если предполагалось хранить строки, то почему интерпретируется как Integer?


 
ruslan_as   (2010-06-11 09:52) [3]

Виноват. Не доглядел!
MBo Спасибо!
Вопрос закрыт.



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

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

Наверх




Память: 0.47 MB
Время: 0.008 c
15-1275481386
bss
2010-06-02 16:23
2010.09.05
Компонент аля TEdit с возможностью раскраски отдельных символов


15-1276107937
da4
2010-06-09 22:25
2010.09.05
Онлайн музыка


2-1275919591
harisma
2010-06-07 18:06
2010.09.05
Приколы с AnsiSameText


2-1275568305
madmech
2010-06-03 16:31
2010.09.05
Подвисает программа после после использования колеса мыши


6-1225619007
XeON
2008-11-02 12:43
2010.09.05
Порт-Маппер на Delphi 10 (Turbo)