Вы пробовали onPanUpdate(details)
метод? Вот как вы можете это сделать.
GestureDetector(onPanUpdate: (details) {
if (details.delta.dx > 0)
print("Dragging in +X direction");
else
print("Dragging in -X direction");
if (details.delta.dy > 0)
print("Dragging in +Y direction");
else
print("Dragging in -Y direction");
});
Примечание. Этот обратный вызов вызывает сбой, если onHorizontalDragUpdate()
или onVerticalDragUpdate()
установлены, как указано в anmol.majhail.
Хотя Microsft говорит, что Вы не должны, и Вы не должны, отправить код OEM, необходимо отправить скэн-коды OEM. В этом примере я должен отправить скэн-коды OEM за
Существует изображение диаграммы на CodeProject, который перечисляет делание и скэн-коды повреждения для различных ключей:
В моем случае первоначальные вызовы к keybd_event должны быть изменены на:
Byte key = Ord("A");
keybd_event(key, 0x1E, 0, 0); // key goes down
keybd_event(key, 0x9E, KEYEVENTF_KEYUP, 0); // key goes up
я протестировал это, и это работает. Таким образом, все хорошо.
Можете быть Вы, может выполнить autoit сценарий с PsExec, легкая замена telnet, которая позволяет Вам выполнить процессы в других системах, вместе с полной интерактивностью для консольных приложений, не имея необходимость вручную устанавливать клиентское программное обеспечение.
(AutoIt довольно способен для отправки любого сигнала (ключи или другой) к любому приложению окна, и мог быть запущен с PsExec на удаленном рабочем столе),
Сценарий AutoIt как KillSaver, например, разработан для перемещения мыши, чтобы избежать, чтобы любой продлил время простоя на компьютере!
Вы можете использовать SendMessage (); Это действительно лучший симулятор ключей. Что ж, удачи в этом!
Это сработало очень хорошо, спасибо. Для получения кода сканирования клавиатуры можно использовать:
int scan;
scan = MapVirtualKey(key & 0xff, 0);
keybd_event(key, scan, 0, 0); // key goes down
keybd_event(key, scan | 0x80, KEYEVENTF_KEYUP, 0); // key goes up