在MFC中使用工具条(Toolbar控件及其消息事件)

        MFC中的Mene和Toolbar都是常用的控件,如果你觉得按钮控件不容易组织结构,Menu和Toolbar将是一个不错的选择,你可以参照微软官方的代码添加控件,这篇不可介绍的是最简方法,直接开始吧。过程分为三步:

        1.在资源管理器中添加Toolbar控件

        2.在控件编辑器中添加图标和按钮

        3.为按钮添加消息事件

        第一步:添加Toolbar控件,并随意添加一个按钮(否则toolbar控件将被视作bmp),在对话框头文件中添加控件变量

          CToolBar  m_ToolBar

        在对话框初始化函数中创建控件并显示(如果你没有参照微软官方的代码,请给上方预留一定空间,这样控件显示时才不会遮挡)

	if (!m_ToolBar.CreateEx(this, TBSTYLE_FLAT, CBRS_SIZE_DYNAMIC |
		CBRS_TOOLTIPS | WS_CHILD | CBRS_TOP | TBSTYLE_LIST | CBRS_TOOLTIPS)
		|| !m_ToolBar.LoadToolBar(IDR_TOOLBAR1)){
		MessageBox(L"创建工具条失败 ");
	}
	m_ToolBar.ShowWindow(SW_SHOW);
	RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0);
	return TRUE;

        第二步:你可以直接将位图粘贴到这里,通过拖动按钮的方式改变布局,直接编辑最右边的灰色按钮会自动添加。打开按钮属性,可以设置按钮的大小,还有该按钮的控件ID

tb

        第三步:添加控件事件

        1.手动添加消息函数

        2.为该控件事件添加ON_COMMAND绑定(BT_CLICKED等也可以)

BEGIN_MESSAGE_MAP(CModelLabelToolDlg, CDialogEx)
        ......
	ON_COMMAND(ID_T_CLOSE, &CModelLabelToolDlg::OnBnClose)
END_MESSAGE_MAP()

        3.编辑消息函数,实现你想要的功能,这样就可以在你的程序上方使用工具条了,快试一试吧~

gui

        OK, See You Next Chapter!

发表评论