跪求!CDialogBar下的按钮怎么响应,小弟我添加了消息为什么总是灰色的

跪求!CDialogBar上的按钮如何响应,我添加了消息为什么总是灰色的
我在对话框上创建了一个Cdialogbar,然后再这个对话框上响应CDialogbar的按钮,但总是灰色的,代码为
BEGIN_MESSAGE_MAP(CPreViewDlg, CDialogEx)
  ON_COMMAND(ID_BUTTON1, &CPreViewDlg::OnBUTTON1)
END_MESSAGE_MAP()

void CPMyDlg::OnBUTTON1()
{
  // TODO: Add your command handler code here
   
}
该怎样改啊

------解决方案--------------------
你Cdialogbar对应的Toolbar的资源编号是多少??ID_BUTTON1??
我感觉应该不太可能吧??

ON_COMMAND要绑定Toolbar子按钮编号的
------解决方案--------------------
没用过。有人说要更新下状态

C/C++ code

void CXXX::UpdateControls(BOOL bEnabled)
{
    for(int i = 0, j = GetToolBarCtrl().GetButtonCount(); i < j; i++)
    {
        if(GetButtonStyle(i)&(TBBS_SEPARATOR))
            continue;

        if(bEnabled)
            SetButtonStyle(i, GetButtonStyle(i)&(~TBBS_DISABLED));
        else
            SetButtonStyle(i, GetButtonStyle(i)|TBBS_DISABLED);
    }

    RedrawWindow();
}

------解决方案--------------------
在‘插入资源’中插入对话框-》展开后插入CDialogBar。
加按钮。
用向导产生按钮:
void CMyDlgBar::OnButton1() 

------解决方案--------------------
例子:
about 对话框:
init:
//CDialogBar m_wndDlgBar;
if (!m_wndDlgBar.Create(this, IDD_DIALOGBAR,CBRS_ALIGN_ANY, AFX_IDW_DIALOGBAR))
{
TRACE0("Failed to create dialogbar\n");
return -1; // fail to create
}
m_wndDlgBar.MoveWindow(0,0,100,40);
消息:
1。 afx_msg void OnButton1();
2。 ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
3。void CAboutDlg::OnButton1() 
{
// TODO: Add your control notification handler code here
AfxMessageBox("OnButton1");
}

------解决方案--------------------
怎么可能是灰色的呢?Cdialogbar本身和一个dlg差不多,上面的按钮就是普通按钮啊,你即使不响应函数也应该是激活的啊,除非你的按钮本身就是DISABLE的
------解决方案--------------------
对话框初始化都用oninitdialog
------解决方案--------------------
参考
http://www.vckbase.com/index.php/cv/114
------解决方案--------------------
这个帮顶 我前几天在创建listctrl时 在listctrl上面加的toolbar也是灰色的 但是用系统ID_FILE_NEW、ID_FILE_OPEN、ID_FILE_SAVE就变成亮的了,不知道为啥,