在类VC的界面实现中加入目录树
2008-01-19 20:24:50 来源:WEB开发网核心提示:前言本文是在《轻松类VC界面》的基础上写的,初次写文章,在类VC的界面实现中加入目录树,表义不清之处,请谅解!如果书归正传,二、应用示例1、建立一个基于SDI的工程,工程命名为:009 ,(我的工程中命名基本是008,007)2、将文件夹SplitClass下的sizecbar.h sizecbar.cpp scbar
前言
本文是在《轻松类VC界面》的基础上写的,初次写文章,表义不清之处,请谅解!如果书归正传,开始……。
程序运行结果如下图:左边、底下有两个可浮动、可变大小的控制窗口 ,在左边一个Tab页中,可以显示系统目录。
一、实现原理
图中两个窗口的实现类是从CControlBar派生出来的,王骏先生将CSizingControlBar类修改了一下并命名为CCoolBar,我所要做的是应用该类。左边窗口中的目录树,是从类CdirTreeCtrl派生出来的,我们只要引用就可以,详见代码。
二、应用示例
1、建立一个基于SDI的工程,工程命名为:009 。(我的工程中命名基本是008,007)
2、将文件夹SplitClass下的sizecbar.h sizecbar.cpp scbarg.h
scbarg.cpp 四个文件复制到工程目录下。在菜单Project->Add to project->Files将四个文件加入工程中,此时在ClassView中将出现了一个称为CCoolBar的类。
在stdafx.h文件中加上
#include "sizecbar.h"
#include "scbarg.h"
2.1、为CMainFrame增加成员变量:
CCoolBar m_LeftCtrBar; //左面的控制窗口
CCoolBar m_BottomCtrBar; //最下面的控制窗口
2.2、在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)中添加以下代码:
//-----------1.创建ControlBar--------
if(!(m_LeftCtrBar.Create(_T("我的控制条1"), this, CSize(230,260),TRUE, 123)))
{
TRACE0("Failed to create m_LeftCtrBar\n");
return -1;
}
if(!(m_BottomCtrBar.Create(_T("我的控制条2"), this, CSize(100, 100), TRUE, 124)))
{
TRACE0("Failed to cretae m_BottomCtrBar\n");
return -1;
}
2.3、停靠控制:
赞助商链接