Элементы управления TreeView - HTREEVIEW - PullRequest
0 голосов
/ 17 апреля 2010

Я новичок в программировании на Win32 API и пытаюсь понять исходный код древовидной структуры из codeproject.

Но я действительно не понимаю этого:

BOOL TreeView::DoNotify(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    // blah blah
    HTREEVIEW Selected = (HTREEITEM)SendDlgItemMessage(hWnd,ID_TREE,TVM_GETNEXTITEM,TVGN_CARET,(LPARAM)Selected);
    // halb halb
}

Это не работает (Selected используется без инициализации), пока я не объявлю Selected глобальной переменной.

Спасибо, что прочитали это, и мне нужна ваша помощь.

1 Ответ

2 голосов
/ 17 апреля 2010

TVM_GETNEXTITEM с TVGN_CARET не использует LParam (так что вы можете просто передать NULL). Вы можете убедиться в этом, посмотрев макрос для того же действия:

#define TreeView_GetSelection(hwnd) TreeView_GetNextItem(hwnd, NULL,  TVGN_CARET)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...