Описываем идентификатор в resource.h:
#define IDC_BUTTON1 1000 #define IDC_BUTTON2 1001 #define IDC_NEW 1002 // Next default values for new objects
Связываем его с акселератором:
Объявляем свою функцию:
class CTestMessageDlg : public CDialog { // Construction public: CTestMessageDlg(CWnd* pParent = NULL); // standard constructor ...... protected: HICON m_hIcon; afx_msg void OnButton3(); // Generated message map functions //{{AFX_MSG(CTestMessageDlg) virtual BOOL OnInitDialog(); ...... };
Добавляем макрос обработки сообщения:
BEGIN_MESSAGE_MAP(CTestMessageDlg, CDialog) //{{AFX_MSG_MAP(CTestMessageDlg) ...... //}}AFX_MSG_MAP ON_BN_CLICKED(IDC_NEW, OnButton3) END_MESSAGE_MAP()
Пишем реализацию:
void CTestMessageDlg::OnButton3() { AfxMessageBox("Button 3"); }
Запускаем, нажимаем на C.
Вывод – акселераторами можно пользоваться без элементов, если описать просто идентификаторы.