下面是我通过使用向导生成的代码:
class
CDemoView : public CWindowImpl<CDemoView, CTreeViewCtrl>
{
public
:
DECLARE_WND_SUPERCLASS(NULL, CTreeViewCtrl::GetWndClassName())
BOOL PreTranslateMessage(MSG* pMsg)
{
pMsg;
return FALSE;
}
BEGIN_MSG_MAP(CDemoView)
END_MSG_MAP()
};
注意和普通窗口的区别:
1) CWindowImpl第二个木板参数为CTreeViewCtrl类
2) DECLARE_WND_SUPERCLASS宏取代了原来的DECLARE_WND_CLASS宏
3) 没有OnPaint函数的定义,因为这个函数我们不需要改写
我们只需要操作CDemoView的成员函数就可以添加,删除,修改树。比如修改CMainFrame类的函数如下:
LRESULT OnFileNew(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
{
// TODO: add code to initialize document
m_view.InsertItem(L"ok",0,0,0,0);
return 0;
}