• 大小: 48.94MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-17
  • 语言: 其他
  • 标签: mfc  二叉树  可视化  

资源简介

实现二叉树的可视化处理,很好的源码资料供大家学习。。

资源截图

代码片段和文件信息


#include “stdafx.h“
#include “MainFrm.h“
#include “ClassView.h“
#include “Resource.h“
#include “绘制二叉树.h“

class CClassViewMenuButton : public CMFCToolBarMenuButton
{
friend class CClassView;

DECLARE_SERIAL(CClassViewMenuButton)

public:
CClassViewMenuButton(HMENU hMenu = NULL) : CMFCToolBarMenuButton((UINT)-1 hMenu -1)
{
}

virtual void OnDraw(CDC* pDC const CRect& rect CMFCToolBarImages* pImages BOOL bHorz = TRUE
BOOL bCustomizeMode = FALSE BOOL bHighlight = FALSE BOOL bDrawBorder = TRUE BOOL bGrayDisabledButtons = TRUE)
{
pImages = CMFCToolBar::GetImages();

CAfxDrawState ds;
pImages->PrepareDrawImage(ds);

CMFCToolBarMenuButton::OnDraw(pDC rect pImages bHorz bCustomizeMode bHighlight bDrawBorder bGrayDisabledButtons);

pImages->EndDrawImage(ds);
}
};

IMPLEMENT_SERIAL(CClassViewMenuButton CMFCToolBarMenuButton 1)

//////////////////////////////////////////////////////////////////////
// 构造/析构
//////////////////////////////////////////////////////////////////////

CClassView::CClassView()
{
m_nCurrSort = ID_SORTING_GROUPBYTYPE;
}

CClassView::~CClassView()
{
}

BEGIN_MESSAGE_MAP(CClassView CDockablePane)
ON_WM_CREATE()
ON_WM_SIZE()
ON_WM_CONTEXTMENU()
ON_COMMAND(ID_CLASS_ADD_MEMBER_FUNCTION OnClassAddMemberFunction)
ON_COMMAND(ID_CLASS_ADD_MEMBER_VARIABLE OnClassAddMemberVariable)
ON_COMMAND(ID_CLASS_DEFINITION OnClassDefinition)
ON_COMMAND(ID_CLASS_PROPERTIES OnClassProperties)
ON_COMMAND(ID_NEW_FOLDER OnNewFolder)
ON_WM_PAINT()
ON_WM_SETFOCUS()
ON_COMMAND_RANGE(ID_SORTING_GROUPBYTYPE ID_SORTING_SORTBYACCESS OnSort)
ON_UPDATE_COMMAND_UI_RANGE(ID_SORTING_GROUPBYTYPE ID_SORTING_SORTBYACCESS OnUpdateSort)
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CClassView 消息处理程序

int CClassView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDockablePane::OnCreate(lpCreateStruct) == -1)
return -1;

CRect rectDummy;
rectDummy.SetRectEmpty();

// 创建视图:
const DWORD dwViewstyle = WS_CHILD | WS_VISIBLE | TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;

if (!m_wndClassView.Create(dwViewstyle rectDummy this 2))
{
TRACE0(“未能创建类视图\n“);
return -1;      // 未能创建
}

// 加载图像:
m_wndToolBar.Create(this AFX_DEFAULT_TOOLBAR_style IDR_SORT);
m_wndToolBar.LoadToolBar(IDR_SORT 0 0 TRUE /* 已锁定*/);

onchangeVisualstyle();

m_wndToolBar.SetPanestyle(m_wndToolBar.GetPanestyle() | CBRS_TOOLTIPS | CBRS_FLYBY);
m_wndToolBar.SetPanestyle(m_wndToolBar.GetPanestyle() & ~(CBRS_GRIPPER | CBRS_SIZE_DYNAMIC | CBRS_BORDER_TOP | CBRS_BORDER_BOTTOM | CBRS_BORDER_LEFT | CBRS_BORDER_RIGHT));

m_wndToolBar.SetOwner(this);

// 所有命令将通过此控件路由,而不是通过主框架路由:
m_wndToolBar.SetRouteCommandsViaframe(FALSE);

CMenu menuSort;
menuSort.LoadMenu(IDR_POPUP_SORT);

m_wndToolBar.ReplaceButton(ID_SORT_MENU CClassViewMenuButton(menuSor

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-05-09 15:03  btree\
     目录           0  2019-05-09 15:03  btree\B_tree\
     目录           0  2013-10-25 08:59  btree\B_tree\B_TREE\
     文件        9032  2012-10-10 21:49  btree\B_tree\B_TREE\ClassView.cpp
     文件        1275  2012-10-10 21:49  btree\B_tree\B_TREE\ClassView.h
     文件        6673  2012-10-10 21:49  btree\B_tree\B_TREE\FileView.cpp
     文件        1135  2012-10-10 21:49  btree\B_tree\B_TREE\FileView.h
     文件       14263  2012-10-10 21:49  btree\B_tree\B_TREE\MainFrm.cpp
     文件        1664  2012-10-10 21:49  btree\B_tree\B_TREE\MainFrm.h
     文件        4970  2012-10-10 21:49  btree\B_tree\B_TREE\OutputWnd.cpp
     文件        1017  2012-10-10 21:49  btree\B_tree\B_TREE\OutputWnd.h
     文件        8755  2012-10-10 21:49  btree\B_tree\B_TREE\PropertiesWnd.cpp
     文件        1445  2012-10-10 21:49  btree\B_tree\B_TREE\PropertiesWnd.h
     文件        4932  2012-10-10 21:49  btree\B_tree\B_TREE\ReadMe.txt
     文件        7976  2011-12-12 13:29  btree\B_tree\B_TREE\UserImages.bmp
     文件         876  2012-10-10 21:49  btree\B_tree\B_TREE\ViewTree.cpp
     文件         372  2012-10-10 21:49  btree\B_tree\B_TREE\ViewTree.h
     文件        7492  2012-12-06 18:17  btree\B_tree\B_TREE\binarytree.h
     文件        1172  2012-10-21 11:10  btree\B_tree\B_TREE\my_binarytree_dlg.cpp
     文件         523  2012-10-21 10:50  btree\B_tree\B_TREE\my_binarytree_dlg.h
     目录           0  2013-10-25 08:59  btree\B_tree\B_TREE\res\
     文件         660  2012-10-10 21:49  btree\B_tree\B_TREE\res\My.rc2
     文件        1078  2011-12-12 13:29  btree\B_tree\B_TREE\res\Toolbar.bmp
     文件        5816  2011-12-12 13:29  btree\B_tree\B_TREE\res\Toolbar256.bmp
     文件        1078  2012-01-11 01:22  btree\B_tree\B_TREE\res\class_view.ico
     文件        2478  2012-01-11 01:22  btree\B_tree\B_TREE\res\class_view_hc.ico
     文件         958  2011-12-12 13:29  btree\B_tree\B_TREE\res\classview.bmp
     文件        5096  2011-12-12 13:29  btree\B_tree\B_TREE\res\classview_hc.bmp
     文件         246  2011-12-12 13:29  btree\B_tree\B_TREE\res\explorer.bmp
     文件         824  2012-01-11 01:22  btree\B_tree\B_TREE\res\explorer_hc.bmp
     文件        1078  2011-12-12 13:29  btree\B_tree\B_TREE\res\file_view.ico
............此处省略33个文件信息

评论

共有 条评论