Параметр Shift указывает, какая комбинация клавиш Shift , Ctrl и Alt не работает.Тем не менее, он не различает левый и правый.Для этого вам необходимо использовать функцию API GetKeyState
.
Перехватывать правую клавишу Shift, когда она нажимает код, аналогичный тому, который у вас есть, но в событии Form_KeyDown
.Установите логическое значение уровня модуля, чтобы указать, что ключ теперь не работает.(Обратите внимание, что вам нужно проверить, что KeyCode
равно 16, что вы получите для любой клавиши Shift.)
Затем в событии Form_KeyUp
, если ваш логический элемент говорит, что ключ не работает, но GetKeyState
возвращает отрицательное число, указывающее, что оно действительно работает, вы знаете, что ключ был отпущен.Также убедитесь, что вы сбрасываете логическое значение уровня формы.