заменялось нажатие одной клавиши на нажатие другой клавиши, но только если выбрана конкретная раскладка. Условие написано так:
if (InputLanguage.CurrentInputLanguage.Culture.TwoLetterISOLanguageName == "en")
{
return (IntPtr)0;
}
else
{
if (keyCode == 110)
{
//--нажатие нужной клавиши--
return (IntPtr)1;
}
}
Такая штука работает, но всегда видит не текущую раскладку, а ту при которой была запущена программа, как её заставить сравнивать именно с текущей раскладкой?
Напиши код и для той и другой раскладки 🤭
отслеживать изменение раскладки во время приложения? попробуй от сюда пойти, найдешь как отследить, Сможешь отлавливать этот момент и пользоваться у себя
А раскладка не per window ли переключается?
Я это к тому, что мб окно без фокуса не получает сообщения о смене раскладки.
Верно, я уже позже писал, что переписал отслеживание через винапи и все заработало как полагается.
Обсуждают сегодня