【发布时间】:2013-11-20 13:18:53
【问题描述】:
我正在开发由我以外的人编写的软件。我的任务是摆脱以前用于创建 GUI 的库 Code Jockey,并将其替换为纯 MFC。我正在使用CFrameWnd 创建我的大型机,我在其中创建工具栏等。
这是之前库的代码 sn -p 创建工作区栏:
if ( !m_tabbarWorkspace.Create(this, ID_VIEW_WORKSPACE,
_T("Workspace"), CSize(225,100), CBRS_LEFT ))
{
TRACE0("Failed to create dialog bar m_tabbarWorkspace\n");
return -1; // fail to create
}
m_tabbarWorkspace 是从CControlBar 派生的类的对象。到目前为止,代码在没有工作区栏的情况下运行良好。它运行,我可以使用所有功能。
创建所述栏并将其插入已经存在的父窗口的最佳方法是什么?
提前致谢
【问题讨论】:
-
你能定义你对“工作区栏”的使用吗?你的意思是工具栏还是对话框栏?或者,也许是一个 CView 对象?
-
我将把它用作与树视图兼容的可停靠窗口。我将把它与 CTreeView 类联系起来,我知道如何,但至于你的问题,我不确定什么是最好的栏,这就是我需要帮助的。我应该从哪个类或哪个类派生来实现所需的控件
-
这取决于安装的 Visual Studio 版本。如果您有一个相对较新的类,则可以利用作为 Visual Studio 功能包一部分提供的 BCG 类。否则,您将需要使用基本 MFC 类。 CDialogBar 之类的东西作为包含子树控件的父级应该提供您想要的。