Как поддержать доступность в CMFCMenuBar и его элементах

Мне нужно включить доступность для CMFCMenubar использовать его в кодированном тесте пользовательского интерфейса (не поддерживается по умолчанию), как упоминалось в этом посте в блоге MSDN Visual Studio, который контролирует пакет функций MFC (например, CMFCMenuBar) не полностью поддерживаются.

Я использовал инструмент, который проверяет поддержку специальных возможностей в моем программном обеспечении, он находится по этому пути C: \ Program Files \ Windows Kits \ 8.1 \ bin \ x86 "inspect.exe", когда я использовал UI Automation, он работает, но когда я использую MSAA (та же технология, что и в кодированном тесте пользовательского интерфейса) не работает.

Я попробовал следующий переход, чтобы заставить это работать:

  1. Я создал новый проект и установил флажок Доступность поддержки в мастере.
  2. Я назвал метод GetGlobalData()->EnableAccessibilitySupport(TRUE); в первой записи заявки.
  3. я звонил EnableActiveAccessibility(); в кадрах, также для menubar(это называется по умолчанию, если GetGlobalData()->IsAccessibilitySupport() является true)

но это не удалось, как включить его мне нужна помощь

1 ответ

Если вы посмотрите на происхождение CMFCmenubar и связанных с ним "кнопок", вы увидите, что кнопки на базовом уровне являются производными от CObject. Вот почему они не поддерживаются закодированным пользовательским интерфейсом. Кодированный пользовательский интерфейс не может их видеть. Мы испытываем ту же проблему с нашими тестами пользовательского интерфейса. В настоящее время нет простого обхода, если вы используете классы из пакета функций.

Другие вопросы по тегам