最近再做一个如何在展开CTreeCtrl节点的时候,想更换一下该节点的图标。
那么如何判断该节点是否处于展开的状态呢。
我是用如下事件来做的。
在.h里面定义函数:
afx_msg void OnTvnItemexpandedTreeMain(NMHDR *pNMHDR, LRESULT *pResult);
在.cpp文件中实现该函数
那么如何判断该节点是否处于展开的状态呢。
我是用如下事件来做的。
在.h里面定义函数:
afx_msg void OnTvnItemexpandedTreeMain(NMHDR *pNMHDR, LRESULT *pResult);
在.cpp文件中实现该函数
HTREEITEM selectedItem = m_mainTree.GetSelectedItem();
if(selectedItem == hRecentContacts || selectedItem == hOfenUsedContacts || selectedItem == hUnderConversation)
{
if (m_mainTree.GetItemState(selectedItem,TVIS_EXPANDED)&TVIS_EXPANDED)
{
m_mainTree.SetItemImage(selectedItem,8,8);
}
else
{
m_mainTree.SetItemImage(selectedItem,7,7);
}
}