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

Вниз

TreeView с CheckBoxами   Найти похожие ветки 

 
DUDAS ©   (2006-03-19 12:27) [0]

Посоветуйте, как сделать TreeView с CheckBoxами


 
API ©   (2006-03-19 12:33) [1]

TTreeNode.StateIndex


 
DUDAS ©   (2006-03-19 12:37) [2]

Поподробнее, пожалуйста


 
API ©   (2006-03-19 12:54) [3]

Поподробнее, пожалуйста

1. Рисуете красивый квадратик с рамочкой и еще красивее квадратик с рамочкой и галочкой.
2. Эти два рисунка вставляете в некий ImageList (например, пустой - с индексом 0, а с галочкой - с индексом 1).
3. Указываете этот ImageList в свойстве StateImages Вашего TreeView.
4. Если для выбранной ветки (TTreeNode) состояние "отмечен" - устанавливаете для этой ветки индекс StateIndex соответствующий номеру изображения с галочкой. Согласно примеру в п. 2,- индекс должен быть равен 0.
5. Если "не отмечен" - индекс, соответствующий номеру изображения без галочки. Согласно примеру в п. 2 - 1.

Захотите - можете нарисовать еще квадратиков - с крестиками, минусами, плюсами, буковками и пр., и загрузить их в ImageList. Устанавливая соответсвующий индекс StateIndex, будете иметь неограниченное разообразие отметок.


 
DUDAS ©   (2006-03-19 12:58) [4]

Спасибо, может еще подскажете как обрабативать клик, чтобы менялись квадратики?


 
API ©   (2006-03-19 13:01) [5]

А разве TTreeView не имеет обработчиков?


 
Наиль ©   (2006-03-19 14:56) [6]

С помощь GetHitTestInfoAt можно проверить куда нажали (на квадратик или нет). Далее по усмотрению.
With TreeView.ScreenToClient(Mouse.CursorPos) do
if htOnStateIcon in GetHitTestInfoAt(x,y) then ...



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

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

Наверх




Память: 0.47 MB
Время: 0.028 c
6-1135025373
Eraser
2005-12-19 23:49
2006.04.02
Скорость работы TIdFTP.MakeDir


2-1142872872
AlexLines
2006-03-20 19:41
2006.04.02
Что это за PrintDialog?


1-1140179067
rolex
2006-02-17 15:24
2006.04.02
Как сделать нерабочими CheckBox ы и Header в ListView?


2-1142412722
ody
2006-03-15 11:52
2006.04.02
ошибка при работе сom портом


15-1141848625
LordOfRock
2006-03-08 23:10
2006.04.02
Dr. Web лезет в инет