Мне нужна функциональность, аналогичная Google Desktop. Когда вы дважды быстро нажмете Ctrl , появится небольшое окно поиска.
Я пытался использовать довольно тяжелый класс клавиатурных хуков, который я нашел где-то, но он продолжал давать непредсказуемые результаты (то есть, в первый раз, когда это сработало, потом я бы один раз нажал Ctrl , и это поднять событие нажатия кнопки несколько раз?).
Во всяком случае, это просто не кажется сложным, поэтому я чувствую, что, должно быть, что-то делаю не так. Мое приложение (приложение WPF) будет работать с видимостью основного окна, установленной на скрытое, и не находиться на панели задач. Когда я выполняю Ctrl - Ctrl , я хочу поймать его и показать окно.
Еще одна дополнительная проблема - в настоящее время я делаю это, регистрируя горячую клавишу, но это не дает мне полной функциональности, которую я хочу (двойное нажатие Ctrl ). Когда отображается окно, я не нашел 100% надежного способа обнаружения, когда оно больше не имеет фокуса (я хочу скрыть его снова, когда это произойдет). Я пытался отвечать на «Деактивировано», «LostFocus» и т. Д., И они работают большую часть времени. Но иногда кажется, что окно отображается фактически без активации или получения фокуса. Есть идеи по этому поводу?
Спасибо!
Адам