改变工具栏按钮状态的方法 VC

1、  通过CToolBarCtrl的成员函数EnableButton(), 代码如下:

CToolBarCtrl& rCtrl = this->m_wndToolBar.GetToolBarCtrl();

其中m_wndToolBar为工具栏(CToolBar类)对象

  a)  一种是直接使用按钮ID调用EnableButton()

    rCtrl.EnableButton(ID_...., FALSE/TRUE);

  b)  另一种则是通过TBBUTTON结构体来获取按钮ID,使用到GetButton()函数,同为CToolBarCtrl成员。

    TBBUTTON tBtn;

    rCtrl.GetButton(0, &tBtn); //0为按钮在工具栏上的序号,0,1,2….

    rCtrl.EnableButton(tBtn.idCommand, FALSE/TRUE);

2、通过类向导(Wizard)向目标按钮添加消息UPDATE_COMMAND_UI生成函数OnUpdateXXX(CCmdUI *pCmdUI), 直接在函数内改变按钮状态(不可用/可用)。

       pCmdUI->Enable(FALSE/TRUE);

posted @ 2012-08-07 10:50  mywe  阅读(699)  评论(0编辑  收藏  举报