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

📄 maintreeview.cpp

📁 师兄做的算法可视化演示程序
💻 CPP
字号:
// MainTreeView.cpp : implementation file
//

#include "stdafx.h"
#include "AlgorithmicDesign.h"
#include "MainTreeView.h"

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

/////////////////////////////////////////////////////////////////////////////
// CMainTreeView

IMPLEMENT_DYNCREATE(CMainTreeView, CTreeView)

CMainTreeView::CMainTreeView()
{
}

CMainTreeView::~CMainTreeView()
{
}


BEGIN_MESSAGE_MAP(CMainTreeView, CTreeView)
	//{{AFX_MSG_MAP(CMainTreeView)
		// NOTE - the ClassWizard will add and remove mapping macros here.
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMainTreeView drawing

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

/////////////////////////////////////////////////////////////////////////////
// CMainTreeView diagnostics

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

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

/////////////////////////////////////////////////////////////////////////////
// CMainTreeView message handlers

void CMainTreeView::OnInitialUpdate() 
{
	CTreeView::OnInitialUpdate();
	CTreeCtrl& theCtrl = GetTreeCtrl();	

	DWORD dwStype=GetWindowLong(theCtrl.GetSafeHwnd(),GWL_STYLE);
	dwStype&=~LVS_TYPEMASK;		//Remove the current stype flags
	dwStype|=TVS_HASLINES;		//Add the List stype
	dwStype|=TVS_HASBUTTONS;
	dwStype|=TVS_SHOWSELALWAYS;
	dwStype|=TVS_LINESATROOT;
    dwStype|=WS_CHILD;
	SetWindowLong(theCtrl.GetSafeHwnd(),GWL_STYLE,dwStype);
	
	// TODO: Add your specialized code here and/or call the base class
	if(NULL == m_ServerImgList.GetSafeHandle())
	{
		m_ServerImgList.Create(26, 26, ILC_COLOR24 | ILC_MASK, 0, 256);
		
		CBitmap	m_Bmp;
		m_Bmp.m_hObject = (HBITMAP)::LoadImage(NULL,"res\\AlgorithmicDesign.bmp",IMAGE_BITMAP,
		                    26*9 , 26 ,LR_LOADFROMFILE);
		if(NULL != m_Bmp.GetSafeHandle())
		{
			m_ServerImgList.Add(&m_Bmp, RGB(3, 126, 129));
			m_Bmp.DeleteObject();
		}
	}

	if(NULL != m_ServerImgList.GetSafeHandle())
	{
		theCtrl.SetImageList(&m_ServerImgList, TVSIL_NORMAL);
	}

	hRootItem		=theCtrl.InsertItem("算法设计演示", 5, 5, TVI_ROOT, TVI_LAST);	
   //hSecondItem		=theCtrl.InsertItem("棋类游戏", 5, 5, hRootItem, TVI_LAST);
	//theCtrl.Expand(hSecondItem, TVE_EXPAND);
	theCtrl.Expand(hRootItem, TVE_EXPAND);

	 COLORREF	clrBk	=RGB(150, 175, 230);
	 theCtrl.SetBkColor( clrBk);
     //theCtrl.SetTextColor(clrBk);


}



void CMainTreeView::AddItem(LPCSTR m_strname)
{

	CTreeCtrl& theCtrl = GetTreeCtrl();	
	TVITEM Item;
	char text[31];
    Item.mask=TVIF_HANDLE|TVIF_TEXT;
	Item.hItem=hSecondItem;
	Item.pszText=text;
	Item.cchTextMax=30;
    BOOL ret=theCtrl.GetItem(&Item);
	if(ret)
		theCtrl.DeleteItem(hSecondItem);
		
    hSecondItem		=theCtrl.InsertItem(m_strname, 5, 5, hRootItem, TVI_LAST);
	theCtrl.Expand(hSecondItem, TVE_EXPAND);
	theCtrl.Expand(hRootItem, TVE_EXPAND);
    //Item
	//theCtrl.GetItem(

}

⌨️ 快捷键说明

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