|
#include "pch.h"
|
#include "framework.h"
|
#include "ViewTree.h"
|
#include "MTerm2.h"
|
|
#ifdef _DEBUG
|
#define new DEBUG_NEW
|
#undef THIS_FILE
|
static char THIS_FILE[] = __FILE__;
|
#endif
|
|
/////////////////////////////////////////////////////////////////////////////
|
// CViewTree
|
|
CViewTree::CViewTree() noexcept
|
{
|
}
|
|
CViewTree::~CViewTree()
|
{
|
}
|
|
BEGIN_MESSAGE_MAP(CViewTree, CTreeCtrl)
|
ON_NOTIFY_REFLECT(NM_DBLCLK, &CViewTree::OnDblClkTree)
|
ON_NOTIFY_REFLECT(NM_CLICK, &CViewTree::OnClkTree)
|
|
END_MESSAGE_MAP()
|
|
/////////////////////////////////////////////////////////////////////////////
|
// CViewTree 消息处理程序
|
|
BOOL CViewTree::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult)
|
{
|
BOOL bRes = CTreeCtrl::OnNotify(wParam, lParam, pResult);
|
|
NMHDR* pNMHDR = (NMHDR*)lParam;
|
ASSERT(pNMHDR != nullptr);
|
|
if (pNMHDR && pNMHDR->code == TTN_SHOW && GetToolTips() != nullptr)
|
{
|
GetToolTips()->SetWindowPos(&wndTop, -1, -1, -1, -1, SWP_NOMOVE | SWP_NOACTIVATE | SWP_NOSIZE);
|
}
|
|
return bRes;
|
}
|
|
void CViewTree::OnClkTree(NMHDR* pNMHDR, LRESULT* pResult)
|
{
|
|
HTREEITEM hTreeItem = GetSelectedItem();
|
//以GetItemText()函数为例:
|
CString S1 = GetItemText(hTreeItem);
|
// AfxMessageBox(_T("You have selected ") + S1);
|
|
*pResult = 0;
|
|
}
|
|
void CViewTree::OnDblClkTree(NMHDR* pNMHDR, LRESULT* pResult)
|
{
|
LPNMTREEVIEW pNMTreeView = reinterpret_cast<LPNMTREEVIEW>(pNMHDR);
|
|
HTREEITEM hTreeItem = GetSelectedItem();
|
//以GetItemText()函数为例:
|
CString s2 = GetItemText(hTreeItem);
|
//AfxMessageBox(_T("You have selected ") + s1);
|
CString s1;
|
s1.Format(_T("dbclk Code %d, id %d %d %d %s "), pNMTreeView->action,pNMTreeView->itemOld.hItem, pNMTreeView->ptDrag.x, pNMTreeView->ptDrag.y,s2);
|
|
SysLog(s1);
|
|
*pResult = 0;
|
}
|