ИНФОРМАЦИЯ: С помощью ускорители с MFC немодального диалогового окна

Переводы статьи Переводы статьи
Код статьи: 117500 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

Аннотация

Чтобы использовать сочетания клавиш немодальное диалоговое окно, переопределите PreTranslateMessage () функция в производном классе CDialog.

Дополнительная информация

Чтобы использовать сочетания клавиш немодального диалогового окна, выполните следующие действия:

  1. Создайте немодальное диалоговое окно. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт::
    103788Создание немодального диалогового окна с помощью библиотеки MFC
  2. Вставьте этот образец кода в файлы, перечисленные выше код:
       // .h file with your derived CDialog class.
       class CModeless : public CDialog
       {
          .
        public:
          virtual BOOL PreTranslateMessage(MSG*);
          .
       };
    
       //.cpp file.
       BOOL CModeless::PreTranslateMessage(MSG* pMsg)
       {
          HACCEL hAccel =
          ((CMainFrame*)AfxGetApp()->m_pMainWnd)->GetAccelTable();
          if(!(hAccel &&
               ::TranslateAccelerator(AfxGetApp()->m_pMainWnd->m_hWnd, hAccel,
                                      pMsg)))
               return CDialog::PreTranslateMessage(pMsg);
          else
             return TRUE;
       }
    
       // Mainfrm.h file, where CMainFrame is the main window class.
       HACCEL CMainFrame::GetAccelTable() { return m_hAccelTable; }
    						
  3. Создание сочетания клавиш с Studio приложения или с помощью представления ресурсов из рабочей области проекта в Visual C++ 32-разрядной версии 4.0. Сочетания клавиш должна быть в таблице сочетаний клавиш IDR_MAINFRAME. Кроме того, они должны иметь тот же код, как элементы управления или элементы меню, с которыми они связаны.

Свойства

Код статьи: 117500 - Последний отзыв: 12 ноября 2010 г. - Revision: 2.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft Foundation Class Library 4.2 на следующих платформах
    • Microsoft Visual C++ 1.0 Professional Edition
    • Microsoft Visual C++ 1.52 Professional Edition
    • Microsoft Visual C++ 2.1
    • Microsoft Visual C++ 4.0 Standard Edition
Ключевые слова: 
kbacceleratorkey kbarchitecture kbdlg kbinfo kbkeyaccel kbuidesign kbmt KB117500 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:117500
Заявление об отказе относительно содержимого статьи о продуктах, поддержка которых прекращена
Эта статья содержит сведения о продуктах, поддержка которых корпорацией Майкрософт прекращена. Поэтому она предлагается как есть и обновляться не будет.

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com