SetItemData
- это стандартный способ связывания дополнительных данных с элементом дерева. Если вы уже используете его для хранения всплывающей подсказки, ничего страшного, вы можете создать структуру, которая будет содержать все необходимые данные:
struct Data {
LPCTSTR tooltip;
// add other data members here
};
Затем установите указатель структуры в качестве данных элемента:
Data *data = new Data;
// initialize data members here
tree.SetItemData(hItem, static_cast<DWORD_PTR>(data));
А когда вы хотите получить данные:
Data *data = static_cast<Data *>(tree.GetItemData(hItem));
Также запомните delete
выделенную память при удалении элементов дерева.