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

Вниз

TTreeView. Отслеживаем изменение состояние узла   Найти похожие ветки 

 
AlexDBases ©   (2003-12-23 10:56) [0]

Как узнать что состояние какого либо узла изменилось.
Конкретнее - как узнать (какое событие) происходить при нажатии на checkbox узла дерева.
Заранее спасибо!


 
olookin ©   (2003-12-23 11:06) [1]

Пара OnCollapsed/OnCollapsing - свертывание узла
Пара Onexpanded/OnExpanding - развертывание узла


 
AlexDBases ©   (2003-12-23 11:17) [2]

ты вообще о чем?.
Сори я наверно виноват. Checkbox - это такой квадратик с галочкой =)))) . Свернуть и развернуть узел я могу...=). Это не выход.


 
Тимохов ©   (2003-12-23 11:23) [3]

Анализируй OnClick или что-там еще (сам разберешься) и самое главное получай инфу о том, куда пришелся клик с помощью function GetHitTestInfoAt(X, Y: Integer): THitTests;


 
Тимохов ©   (2003-12-23 11:24) [4]

И вообще пример по GetHitTestInfoAt почитай - там все есть.


 
alexdbases ©   (2003-12-23 11:29) [5]

нашел в MSDN
#define UM_CHECKSTATECHANGE (WM_USER + 100)case WM_NOTIFY:
{
LPNMHDR lpnmh = (LPNMHDR) lParam;
TVHITTESTINFO ht = {0};

if(lpnmh->code == NM_CLICK) && (lpnmh->idFrom == IDC_MYTREE))
{
DWORD dwpos = GetMessagePos(); // include <windowsx.h> and <windows.h> header files
ht.pt.x = GET_X_LPARAM(dwpos);
ht.pt.y = GET_Y_LPARAM(dwpos);
MapWindowPoints(HWND_DESKTOP, lpnmh->hwndFrom, &ht.pt, 1); TreeView_HitTest(lpnmh->hwndFrom, &ht);

if(TVHT_ONITEMSTATEICON & ht.flags)
{

PostMessage(hWnd, UM_CHECKSTATECHANGE, 0, (LPARAM)ht.hItem);
}
}
}
break;case UM_CHECKSTATECHANGE:
{
HTREEITEM hItemChanged = (HTREEITEM)lParam;
/*
Retrieve the new checked state of the item and handle the notification.
*/
}
break;


Но вот пака сложности с переводом на delphi


 
Тимохов ©   (2003-12-23 11:30) [6]

А все-таки почитай выше.
Это уже реализовано в TTreeView.


 
alexdbases ©   (2003-12-23 11:46) [7]

Извини ты прав все вроде разобрался.......спасибо.



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

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

Наверх




Память: 0.48 MB
Время: 0.036 c
6-25490
Кузнецова А.
2003-11-05 12:18
2004.01.09
Как получить подтверждение доставки


9-25165
Карлсон
2003-06-22 21:36
2004.01.09
создание меню в DelphiX.


14-25528
JibSkeart
2003-12-19 12:17
2004.01.09
Семейка :)))


4-25654
Testerman
2003-11-05 19:03
2004.01.09
Помогите заменить кнопку


14-25584
$hade
2003-12-17 07:33
2004.01.09
Samsung DVD-OK. Кто-нибудь сталкивался?