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

Вниз

Заблокировать доступ к родительской ветке ListView   Найти похожие ветки 

 
kyn66 ©   (2007-03-16 10:19) [0]

Возможно-ли САБЖ, при таком раскладе:

-Родительская  ветка 1
 -дочерняя ветка 1
 -дочерняя ветка 2
 -дочерняя ветка 3
-Родительская  ветка 2
 -дочерняя ветка 1
 -дочерняя ветка 2
 -дочерняя ветка 3
...

т.е. родительские ветки не должны получать фокус


 
Сергей М. ©   (2007-03-16 10:27) [1]

У ListView нет ни родительских ни дочерних "веток".
Ветки есть в TreeView

Обрабатывай OnChanging - там есть возможность запретить смену фокуса по требуемому тебе условию

AllowChange := Assigned(Node.Parent);


 
kyn66 ©   (2007-03-16 10:44) [2]

Я не совсем грамотно задал вопрос. Родительская и дочерняя отличаются только визуально за счет сдвига вправо "дочрней ветки"? пардонс.
> AllowChange := Assigned(Node.Parent);
Это , я понимаю относится к TreeView. Да но у ListView тоже есть AllowChange...


 
Сергей М. ©   (2007-03-16 10:55) [3]


> у ListView тоже есть AllowChange


Ну так и используй его, какие проблемы-то ?
Критерий проверки "родственных отношений ветвей" тебе известен же ...


 
kyn66 ©   (2007-03-16 11:20) [4]

уже пробовал, но там нет связи для Parent. Пробовал так //  AllowChange := Integer(Item.Data) <> 0;

Вроде то что нужно, но в этом случае вааще ни одна ветка не прорисовывается(текст). Токак узлы голые и все


 
Сергей М. ©   (2007-03-16 11:41) [5]


> но там нет связи для Parent


Разумеется нет. Но что мешает в "дочернем" TListTtem в св-ве Data сослаться на  "родительский" TListTtem ?
При таком решении проверка сводится к Assigned(Item.Data):
- True, если "дочерний"
- False, если "родительский"


> в этом случае вааще ни одна ветка не прорисовывается(текст).
>  Токак узлы голые и все


if Change = ctState then
AllowChange :=  ((Item.Selected and Assigned(Item.Data)) or not Item.Selected;

А чем TreeView не угодил ?


 
kyn66 ©   (2007-03-16 11:58) [6]


> if Change = ctState then AllowChange :=  ((Item.Selected
> and Assigned(Item.Data)) or not Item.Selected;

Не шость не то, при клике на родителе - курсор к нему намертво прилепает.

> А чем TreeView не угодил ?


Вид представление такой нужен.


 
Сергей М. ©   (2007-03-16 12:05) [7]


> kyn66 ©   (16.03.07 11:58) [6]


Ну тогда сам думай.
Справка-то всегда под рукой)


 
kyn66 ©   (2007-03-16 12:18) [8]

Пытаюсь... А не скажешь заодно, почему у TreeView.Items.Objects отсутствует?


 
Сергей М. ©   (2007-03-16 12:21) [9]


> почему у TreeView.Items.Objects отсутствует?


А почему, спрашивается, он обязан присутствовать ?


 
Jeer ©   (2007-03-16 12:24) [10]

Treenode.Data тебе поможет.


 
kyn66 ©   (2007-03-16 12:32) [11]

Пардонс, опять очепятка , имелось ввиду ListView.Items.Objects отсутствует


 
Jeer ©   (2007-03-16 12:35) [12]

да с какого перепугу он там должен быть и кто это вообще ?

Пользуйся
TListItem.Data


 
ЮЮ ©   (2007-03-16 12:40) [13]

От того, наверное, что TListItem не имеет отношения к TStrings, у которого он присутствует. А для хранения ссылки на объект достаточно и Data, который тоже Pointer


 
kyn66 ©   (2007-03-16 12:58) [14]

>ЮЮ
Действительно, нашел уже и сам, Спасибо!



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

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

Наверх




Память: 0.49 MB
Время: 0.042 c
2-1177092211
likenoother
2007-04-20 22:03
2007.05.13
цвет пикселя


2-1177321428
>>DEATH<<
2007-04-23 13:43
2007.05.13
вытаскивание ссылок


2-1177319049
СержК
2007-04-23 13:04
2007.05.13
Не получается сформировать документ Word


15-1176349479
Slider007
2007-04-12 07:44
2007.05.13
С днем рождения ! 12 апреля


1-1174296970
San ciz
2007-03-19 12:36
2007.05.13
Иконака из длл в Timage. Возможно ли?