Форум: "Начинающим";
Текущий архив: 2007.05.06;
Скачать: [xml.tar.bz2];
ВнизКак за Node: TTreeNode привязыть число Найти похожие ветки
← →
DelphiLexx © (2007-04-06 10:47) [0]Я хочу за каждым Node: TTreeNode привязывать определенное число сво-ва Node.Tag к сожалению нет как мне это сделать?
← →
clickmaker © (2007-04-06 10:47) [1].Data
← →
DelphiLexx © (2007-04-06 10:48) [2]Что Data? Не совсем понятно.
← →
Сергей М. © (2007-04-06 10:50) [3]
> Что Data?
Вместо отсутствующего Tag имеется св-во Data - его и используй.
← →
S@shka © (2007-04-06 11:22) [4]Комментирую
var
P : PInteger;
begin
New (P);
P^ := ... твое число
Node.Data := P;
end;
при уничтожении не забываем про Dispose
← →
Amoeba © (2007-04-06 17:44) [5]Если это число Integer, Word и т.д., т.е. целое, то необходимо и достаточно
Integer(Node.Data) := N;
← →
_Аноним (2007-04-06 17:47) [6]
> т.е. целое
Точнее, то есть любой тип с размером SizeOf(Pointer) или меньше
← →
Amoeba © (2007-04-06 17:47) [7]
> S@shka © (06.04.07 11:22) [4]
Если число целое, то незачем такой огород городить. Если вещественное длиннее 4 байтов - то, естественно, придется использовать указатели, New и Dispose.
← →
begin...end © (2007-04-07 12:47) [8]> Amoeba © (06.04.07 17:44) [5]
Не совсем так.Node.Data := Pointer(N)
.
← →
TStas © (2007-04-08 14:35) [9]Только когда дерево в файл сохраняется, указатели на данные нихрена сами не сохраняются, поэтому их нужно сохранять вручную
← →
Loginov Dmitry © (2007-04-08 15:44) [10]> Только когда дерево в файл сохраняется, указатели на данные
> нихрена сами не сохраняются, поэтому их нужно сохранять
> вручную
А где тут шла речь про сохранение в файл? Тем более указателей. Тем более нахрена указатели сохранять в файл?
← →
_Аноним (2007-04-08 17:15) [11]
> Loginov Dmitry ©
Если "указатели" на самом деле инты, то может и пригодиться сохранение в файл
Кстати в генофонде в этом месте явный косяк
← →
ANB © (2007-04-09 16:31) [12]
> Если "указатели" на самом деле инты, то может и пригодиться
> сохранение в файл
>
> Кстати в генофонде в этом месте явный косяк
По всей видимости, в броланд не думали, что кто то в указателе будет хранить целые числа :) А смысла сохранять указатели в файл нету никакого.
← →
VID © (2007-04-14 03:36) [13]создаем свой класс
type
TNodeEx = class(TTreeNode)
FSomeInt: Integer;
end;
затем обрабатываем событие CreateNodeClass дереваprocedure TForm1.TreeView1CreateNodeClass(Sender: TCustomTreeView;
var NodeClass: TTreeNodeClass);
begin
NodeClass := TNodeEx;
end;
← →
VID © (2007-04-14 03:37) [14]очевидно, что в последствии, при обращении к нодам, необходимо будет кастить их к созданному классу
TNodeEx(treeview.items[0]).FSomeInt := 12002;
← →
_Аноним (2007-04-14 11:58) [15]
> ANB ©
</I
> По всей видимости, в броланд не думали, что кто то в указателе
> будет хранить целые числа :) А смысла сохранять указатели
> в файл нету никакого.
>
Это было бы половина беды. Беда ниачинается, когда окно пересоздается (а борлаанды очень любят пересоздавать окна). Похоже, тот же механизм сохранения\восстановления используется.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.05.06;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.072 c