目录
CToolBarCtrl-父类CWnd,封装了关于工具栏控件的各种操作。
CToolBar一父类CControlBar,封装了关于工具栏的操作,以及和框架窗口的关系。
VS工具栏按钮实现了文件下拉菜单功能
两者之间没什么关系,只是一般绑定着用,就是点击他们两个使用同一个消息
CToolBar:代表整个工具栏;CToolBarCtrl:代码工具栏中的工具按钮。
工具栏的使用:
添加菜单资源
添加工具栏
如何删除?拖出来即可!
由创建菜单的经验可知,子窗口的创建应该在父窗口的WM_CREATE消息处理中,这里指的是窗口之间的关系
另外,点击新建和点击按钮发出的都是ID_NEW消息,实现了绑定处理
int CMyFrameWnd::OnCreate(LPCREATESTRUCT pcs) {
toolbar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP | CBRS_GRIPPER);
toolbar.LoadToolBar(IDR_TOOLBAR1);
toolbar.EnableDocking(CBRS_ALIGN_ANY);
}
TBSTYLE_FLAT
是工具栏控件的样式标志,表示创建一个扁平风格的工具栏。扁平风格的工具栏没有立体效果,按钮没有凸起的外观。WS_CHILD | WS_VISIBLE
是窗口控件的样式标志,表示创建一个可见的子窗口。CBRS_ALIGN_TOP
是控制栏的对齐方式标志,表示工具栏将被置于顶部对齐。CBRS_GRIPPER
是控制栏的附加标志,表示工具栏将包含一个可拖动的抓手。就是可以拖动工具栏,它有一个把手,可以拖动
需要添加把手
CToolBar : : EnableDocking;? ? ? 告诉父窗口工具栏要停靠在框架窗口上
CFrameWnd : : EnableDocking; 框架窗口允许停靠
CFrameWnd : : DockControlBar? ? 设置初始工具栏初始停靠位置