VC++ 6.0里面,toolbar怎么显示

来源:百度知道 编辑:UC知道 时间:2024/06/04 20:13:26
我是个VC的新手,向编辑一个类似画图板的程序,需要一个工具栏,想用toolbar实现,现在toolbar设计完了,ID号也与相应的功能绑定了,但是运行程序的时候不能显示出来,就是不能像<新建,保存。。。。复制,粘贴>那样显示再菜单栏的下方,请哪位大虾帮帮忙,谢谢!
谢了哥们,最好给个程序段,谢了!

按照你的方法我在
MainFrm.h中加入了声明
CToolBar tool_ToolBar;
在CMainFrame::OnCreate中加入了

if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!tool_ToolBar.LoadToolBar(IDR_TOOLBAR_tool))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}

tool_ToolBar.EnableDocking(CBRS_ALIGN_RIGHT);
EnableDocking(CBRS_ALIGN_RIGHT);
DockControlBar(&tool_ToolBar);

但是出现了错误:
Debug Assertion Failed!
为什么啊
即使把以前的toolbar内容注释掉,只留下我写的还是不行,提示说“建立空文档失败”

用向导建一个带CToolbar的SDI
将它自动生成的和CToolbar相关的几行代码拷贝过去 修改下ID就行了

1.在CMainFrme头文件中申明CToolbar
protected:
CToolBar m_wndToolBar;
2.在CMainFrme的Oncreate中添加
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
//将IDR_MAINFRAME替换为你用的ID
3.同样在OnCreate中添加停靠设置
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);

在视图里找找,一个个点着试下就知道了