FAQ:WinAPI VCPP:акселераторы в MFC приложении — различия между версиями
Материал из Весельчак У
RXL (обсуждение | вклад) (Новая: ===Как в диалоговом MFC приложении добавить accelerator'ы? В редакторе ресурсов создаю, а применить не могу.=== ...) |
(нет различий)
|
Версия 14:15, 30 июля 2008
Как в диалоговом MFC приложении добавить accelerator'ы? В редакторе ресурсов создаю, а применить не могу.
class TestDlg : public CDialog { HACCEL accelerators; public: enum{IDD = IDD_TEST_DIALOG}; TestDlg(CWnd* pParent); virtual BOOL PreTranslateMessage(MSG* pMsg); }; TestDlg::TestDlg(CWnd* pParent) : CDialog(TestDlg::IDD, pParent) { //загрузаем из ресурса accelerators = LoadAccelerators( AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_ACCELERATOR)); } BOOL TestDlg::PreTranslateMessage(MSG* pMsg) { //обработка акселераторов if( TranslateAccelerator(m_hWnd, AccelTable, pMsg) )return true; return CDialog::PreTranslateMessage(pMsg); }