![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Иконки в TreeNode [D7, WinXP]
VEZ © (2005-10-27 12:57:00)Создаю в TreeView ноды динамически, каждому ноду присваиваю иконку, но когда я выделяю какой-нибудь нод у меня вылезает нулевая картинка из ImageList, как можно сразу назначить определённую иконку сразу для всех состояний нода.
VEZ (2005-10-27 16:15:00) [1]О, спасибо, работает.
VEZ (2005-10-27 16:15:00) [2]О, спасибо, работает.
VEZ (2005-10-27 16:15:00) [3]О, спасибо, работает.
VEZ (2005-10-27 16:15:00) [4]О, спасибо, работает.
VEZ (2005-10-27 16:15:00) [5]О, спасибо, работает.
Ega23 (2005-10-27 14:20:00) [6]
> не, поле Data использовать нельзя, так как оно у меня уже
> используется для связи с другими объектами.
При чём здесь поле Data????
CurrNode.ImageIndex:=ImageIndex;
CurrNode.SelectedIndex:=ImageIndex;
VEZ (2005-10-27 14:15:00) [7]не, поле Data использовать нельзя, так как оно у меня уже используется для связи с другими объектами.
Ega23 (2005-10-27 14:11:00) [8]При создании нода:
procedure TCustomKdrDBTreeView.AddAllNodes(ParentID: Variant;
ParentNode: TTreeNode);
var
k:Integer;
CurrNode:TTreeNode;
begin
for k:=0 to FTreeItems.Count-1 do
begin
With TKdrDBTreeViewItemIdent(FTreeItems.Items[k]) do
begin
if (Node<>nil) or (ParentKeyFieldValue<>ParentID) then Continue;
if ParentNode=nil then
CurrNode:=Items.Add(nil, DisplayFieldValue)
else
CurrNode:=Items.AddChild(ParentNode, DisplayFieldValue);
CurrNode.ImageIndex:=ImageIndex;
CurrNode.SelectedIndex:=ImageIndex;
Node:=CurrNode;
CurrNode.Data:=FTreeItems.Items[k];
AddAllNodes(KeyFieldValue, CurrNode);
end; // With
end; // for
end;
VEZ (2005-10-27 14:04:00) [9]Тогда можно ли как-нибудь в обработчике OnGetSelectedIndex присвоить текущему состоянию нода тот-же имэджиндекс что и в свойстве ImageIndex, которое я задаю при создании нода.
TStas (2005-10-27 13:37:00) [10]>VEZ Для всех состояний сразу - вряд ли. Как состояние изменилось, так менять иконку
VEZ (2005-10-27 13:27:00) [11]Ну это надо постоянно менять иконки, да ещё и придётся делать проверку что это за нод и какая картинка для него нужна, а можно это определить как -нибудь один раз.
clickmaker (2005-10-27 12:59:00) [12]Node.SelectedIndex
или
OnGetSelectedIndex