Как подделать «Мультитач» для Windows Mobile? - PullRequest
3 голосов
/ 06 октября 2009

Вот идея:

У меня есть две панели с событиями MouseDown. Идея была в том, чтобы у меня был таймер, который поочередно включал бы и отключал панели каждую десятую секунды.

Я надеялся, что событие MouseDown будет перехвачено одной панелью, и затем я смог прочитать e.X и e.Y события, а затем событие MouseDown будет перехвачено другой панелью при следующем событии таймера.

Это будет настоящий MultiTouch, но этого может быть достаточно, чтобы повеселиться. Но это не работает на практике.

Я предполагаю, что эта техника не работает на аппаратном уровне. Но я хотел убедиться, что никто другой не знает, как выполнить «Hack Multitouch»

Есть идеи?

1 Ответ

6 голосов
/ 06 октября 2009

Короткий ответ: это просто не сработает.

Для мультитача у вас должно быть аппаратное обеспечение для его поддержки (емкостный экран). Нет никакого способа заставить резистивный сенсорный экран (который находится на вашем устройстве WinMo) «увидеть» два касания. Вместо этого он просто дает среднее значение всех касаний.

Я видел хак, который предполагает, что вы не касаетесь обеих точек одновременно, и что одна точка (обычно вверху слева) никогда не двигается. Затем вы можете выяснить, где находится вторая точка, отступив от среднего значения. Это вроде работает для таких вещей, как жесты типа «уменьшить масштаб» и «увеличить масштаб», но это все.

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

...