Правильно проводить очистку от статического HTREEITEM

У меня есть главное окно с контролем дерева. Мне нужно отследить определенные изменения проверенного элемента, поэтому я решил сделать static HTREEITEM переменная для хранения этой ручки.

Я не знаю, если установить переменную в NULL в моем WM_DESTROY Хендлера будет достаточно, или мне нужно сделать что-то еще?

Вот фрагменты кода, иллюстрирующие мою дилемму:

LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
static HTREEITEM LastCheckedItem;

// Other parts of the code that work well

case WM_DESTROY:
{
LastCheckedItem = NULL;  // or should I do something else ?

// ...

Спасибо.

С наилучшими пожеланиями.

0

Решение

Древовидное представление должно обрабатывать очистку отдельных элементов при получении WM_DESTROY сообщение, и вам, вероятно, не нужно устанавливать LastCheckedItem в NULL если вам не нужно проверить его значение позже.

2

Другие решения

Вам не нужно делать уборку. Когда вы уничтожите дерево, оно уничтожит все его предметы.

2

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector