⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 leftpaneview.cpp

📁 精通MFC程序 设计
💻 CPP
字号:
// LeftPaneView.cpp : implementation file
//

#include "stdafx.h"
#include "Chapter16.h"
#include "LeftPaneView.h"
#include "MainFrm.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CLeftPaneView

IMPLEMENT_DYNCREATE(CLeftPaneView, CTreeView)

CLeftPaneView::CLeftPaneView()
{
}

CLeftPaneView::~CLeftPaneView()
{
}


BEGIN_MESSAGE_MAP(CLeftPaneView, CTreeView)
	//{{AFX_MSG_MAP(CLeftPaneView)
	ON_NOTIFY_REFLECT(TVN_SELCHANGED, OnSelchanged)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CLeftPaneView drawing

void CLeftPaneView::OnDraw(CDC* pDC)
{
	CDocument* pDoc = GetDocument();
	// TODO: add draw code here
}

/////////////////////////////////////////////////////////////////////////////
// CLeftPaneView diagnostics

#ifdef _DEBUG
void CLeftPaneView::AssertValid() const
{
	CTreeView::AssertValid();
}

void CLeftPaneView::Dump(CDumpContext& dc) const
{
	CTreeView::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CLeftPaneView message handlers

void CLeftPaneView::OnInitialUpdate() 
{
	CTreeView::OnInitialUpdate();	
	// TODO: Add your specialized code here and/or call the base class
	//设置树风格
	::SetWindowLong(m_hWnd,GWL_STYLE,WS_VISIBLE|WS_TABSTOP 
		|WS_CHILD|WS_BORDER|TVS_HASBUTTONS 
		|TVS_LINESATROOT|TVS_HASLINES);
	CTreeCtrl& treeCtrl=GetTreeCtrl();
	//创建图像列表
	m_ImageList.Create(IDB_IMAGES, 16, 1, RGB(255, 0, 255));	
	treeCtrl.SetImageList(&m_ImageList, LVSIL_NORMAL);
	//插入树项
	treeCtrl.InsertItem("编辑视", 0, 0);
	treeCtrl.InsertItem("列表视", 1, 1);
}


void CLeftPaneView::OnSelchanged(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
	// TODO: Add your control notification handler code here
	CMainFrame* pFrame = (CMainFrame*)AfxGetMainWnd();
	CTreeCtrl& treeCtrl=GetTreeCtrl();
	CString str;
	//获取当前选中的树项
	HTREEITEM hSelectedItem=treeCtrl.GetSelectedItem();
	//获取当前选中的树项文本
	str=treeCtrl.GetItemText(hSelectedItem);
	if(str.Find("编辑")!=-1)
	{
		//切换到编辑视图
		pFrame->SwitchToView(EDITVIEW);
	}
	else if(str.Find("列表")!=-1)
	{
		//切换到列表视图
		pFrame->SwitchToView(LISTVIEW);
	}
	*pResult = 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -