Обработка Сенсорного Ввода В Приложениях Windows 8

Даже самые серьезные разработчики языка ассемблера, знающие наизусть все сочетания клавиш, не могут спорить с тем фактом, что по мере того, как все больше устройств и их пользователей поддерживают ввод с помощью сенсорного экрана, обработка методов сенсорного взаимодействия в приложениях становится все более важной.

Стандартные элементы управления и шаблоны Windows 8 хорошо работают с сенсорным вводом — если это все, что вы используете, вам не нужно разбираться в технических деталях.

Если вы работаете с классическими приложениями или хотите разработать собственные элементы управления (например, для игры), вам необходимо знать, как правильно обрабатывать сенсорный ввод. Приложения, работавшие под управлением Windows 7, продолжат работать со следующими функциями:

  • Если ваше приложение обрабатывает только события мыши, то события касания будут сокращены до них (только событий наведения мыши не будет).

  • Если ваше приложение использует события касания Windows 7 (API WM_TOUCH/WM_GESTURE), то эти API по-прежнему доступны.

В обоих случаях вы можете рассмотреть возможность перепроектирования своего приложения с использованием новых API-интерфейсов ввода Windows 8, поскольку они помогут обеспечить согласованность с другими приложениями и улучшить общее взаимодействие с пользователем.

Если ваше приложение изначально не было разработано для обработки сенсорного ввода, вам также может потребоваться переработать пользовательский интерфейс, чтобы сделать его более удобным для сенсорного управления: увеличить размер элементов управления, удалить ненужные элементы и т. д.

Дизайн для сенсорного управления без сенсорного устройства.

Если у вас нет сенсорных устройств, вы можете опробовать свое настольное приложение или приложение из Магазина Windows в симуляторе Windows 8, который входит в состав Visual Studio 2012 на платформе Windows 8. Эта программа находится в папке C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Simulator\11.0\Microsoft.Windows.Simulator.exe .

В нем можно запустить любое приложение, как в обычном сеансе:

Обработка сенсорного ввода в приложениях Windows 8

Приложения Магазина Windows 8 также можно запускать непосредственно в симуляторе из Visual Studio:

Обработка сенсорного ввода в приложениях Windows 8



Сенсорное взаимодействие в Windows 8

Чтобы сделать ваше приложение удобным для пользователя, используемые в нем жесты должны соответствовать стандартным жестам в ОС:

Обработка сенсорного ввода в приложениях Windows 8



Принцип ввода указателя

Одновременная обработка нескольких методов ввода в приложениях может значительно усложнить ситуацию.

К счастью, в Windows 8 Microsoft представила унифицированный ввод с использованием элемента Pointer:

Обработка сенсорного ввода в приложениях Windows 8

Метод ввода Pointer сочетает в себе методы ввода с помощью мыши, пера и сенсорного ввода и является абстракцией этих методов ввода, что позволяет обрабатывать все методы, написав код только один раз.

События указателя — это самое простое, с чем вы можете столкнуться.

Их можно получить для любого элемента пользовательского интерфейса XAML Windows 8, а также для ICoreWindow. Со стороны HTML5 эти элементы доступны, но их имена немного другие.

Они имеют префикс MS: MSPointerDown, MSPointerMove, MSPointerUp. Эквивалентом событий указателя в Win32 являются сообщения WM_POINTERXXX, которые можно получить с помощью функции обратного вызова окна Win32. По умолчанию в приложениях Win32 сообщения WM_POINTERXXX не включают сообщения мыши.

Чтобы получать по-настоящему объединенные сообщения указателя, необходимо сначала вызвать EnableMouseInPointer(true).

События манипуляции также могут предоставлять информацию о масштабировании, вращении и прокрутке.

Кроме того, они предоставляют данные по инерции.

Их можно настроить с помощью Режим Манипуляции для переключения инерции.

Вы можете разрешить только определенные типы взаимодействия/добавлять ограничения (например, направляющие для преобразования в движение X/Y).

Приложения Магазина Windows 8, написанные на HTML5/JavaScript, могут использовать метод WinRT. Распознаватель жестов для доступа к этим событиям.



Обзор API Windows 8



Обработка сенсорного ввода в приложениях Windows 8

Если объект, с которым вы работаете, не переключает события жестов, вы можете отправлять события указателя в интерфейс GestureRecouncer. GestureRecouncer будет переключать выбранные события жестов и манипуляций, а также события перетаскивания.

перекрестная прокрутка .

InteractionContext в Win32 является эквивалентом GestureRecouncer в API среды выполнения Windows. Объект Контекст взаимодействия переключатели INTERACTION_CONTEXT_OUTPUT_CALLBACK , связанный с другими жестами и манипуляциями.

Кроме того, в сенсорное приложение можно встроить интерфейс.

Распознаватель чернил .

Он обеспечивает распознавание рукописного ввода в настольных приложениях и приложениях Магазина Windows 8. Вы также можете вводить события касания из настольных приложений, используя API сенсорного внедрения .

Полную версию статьи можно прочитать на сайте Веб-сайт зоны разработчиков Intel .

Теги: #сенсорные экраны #разработка сайтов #программирование

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.