資源簡(jiǎn)介
實(shí)現(xiàn)二叉樹的可視化處理,很好的源碼資料供大家學(xué)習(xí)。。
代碼片段和文件信息
#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)
//////////////////////////////////////////////////////////////////////
//?構(gòu)造/析構(gòu)
//////////////////////////////////////////////////////////////////////
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();
//?創(chuàng)建視圖:
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(“未能創(chuàng)建類視圖\n“);
return?-1;??????//?未能創(chuàng)建
}
//?加載圖像:
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
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????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個(gè)文件信息
評(píng)論
共有 條評(píng)論