1. 怎么在mfc中添加新的工具栏
在ResourceView里,双击Toolbar,双击IDR_MAINFRAME,
就出现了工具条编辑界面,默认的最右边那个灰按钮就是用来添加新按钮的,
双击它,会弹出对话框让你给新按钮取个ID,取完后关掉对话框
就会多出一个按钮,你可以在这个界面下给按钮画下简单的图案
2. MFC,对话框,编辑框,工具栏不见了!
点击红色框区域试试
3. mfc怎么做工具箱,或者说怎么做个功能区
如果是基于对话框的,那么左边做一个树型控件,右边空着,然后根据左边的节点做一些子对话版框,这些权对话框中的风格要求是子窗口的,然后根据左边用户的选择,把你做的子对话框帖在右边.
当然也可以把所有控件都放置在右边,然后根据用户选择的左边的树型控件的节点来决定哪个显示\哪个隐藏,可是这样做就会很乱,有其在你做对话框编辑的时候.
如果程序不是基于对话框的,而是SDI或者MDI,那么左边的建议作一个PANE,然后右边切换窗口.
4. mfc工具栏显示
//.h
class CMainFrame : public CFrameWnd
{
....
CToolBar m_wndToolBar1;
CToolBar m_wndToolBar2;
....
}
//.cpp
在资源Toolbar下添加两个工具栏 IDR_BAR_TOOL1 IDR_BAR_TOOL2
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
...
if (!m_wndToolBar1;.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar1.LoadToolBar(IDR_BAR_TOOL1))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
if (!m_wndToolBar2.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar2.LoadToolBar(IDR_BAR_TOOL2))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
}
int CMainFrame::ShowToolBar(BOOL bShow)
{ //可以通过bShow控制显示那个工具栏
//ShowControlBar()可以用来控制是否显示该工具栏
ShowControlBar(&m_wndToolBar1,!bShow,FALSE);
ShowControlBar(&m_wndToolBar2,bShow,FALSE);
}
//ShowControlBar()详细用法可参考MSDN
5. c++用MFC创建窗口后,那些设置窗口的工具栏不见了。请问要怎么调出来谢谢、、、、、
右键在VC6.0上面工具栏处单击,会弹出一个菜单选项
勾选controls这个选项就好了
如果你是中文VC6.0,那就翻译过来勾选对应的选项就好了
如下图:
6. mfc中找不到控件工具箱
在图中 红圈所示空白区域 鼠标右键 选择控件/Contrals 就出来了
7. mfc工具栏怎么调出来
在菜单栏,工具栏上右键单击,选择
控件
就OK了
8. MFC工具栏位置问题
把创建工具栏的样式CBRS_TOP改成CBRS_BOTTOM就行
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE
| CBRS_TOP//把这个CBRS_TOP改成CBRS_BOTTOM就行
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
或者用CFrameWnd::DockControlBar
DockControlBar(&m_wndToolBar,AFX_IDW_DOCKBAR_BOTTOM);
void DockControlBar(
CControlBar* pBar,
UINT nDockBarID = 0,
LPCRECT lpRect = NULL
);
至于EnableDocking是"将要"停靠在哪,或者说允许停靠在哪
如果要使工具条浮动,调用CFrameWnd::FloatControlBar
void FloatControlBar(
CControlBar * pBar,
CPoint point,
DWORD dwStyle = CBRS_ALIGN_TOP
);