logo
Литература_1 / photon_old

Отключение горячих клавиш

Выдача пользователю визуальной индикации, что горячая клавиша отключена, отличается от действительного отключения горячей клавиши.

Для того, чтобы выдать визуальную индикацию, используйте технологию, соответствующую виджету:

Чтобы оключить горячую клавишу, используйте одну из следующих технологий:

или

Хорошим основанием для такого подхода является то, что это работает, даже если Ваше приложение имеет одну и ту же горячую клавишу, описанную более чем в одном окне. Например, мы можем иметь меню "Edit" в базовом окне и кнопку "Erase" в порождённом окне, оба с сочетанием <Alt>+<E> в качестве горячей клавиши. Если в текущий момент фокус имеет порождённое окно и пользователь нажимает <Alt>+<E>, вызывается ответная реакция кнопки "Erase" порождённого окна.

Теперь, если мы отменим кнопку "Erase" в порождённом окне, мы хотим использовать <Alt>+<E> для того, чтобы появилось меню "Edit" базового окна. В этом сценарии, пока кнопка "Erase" является выбираемой, будет вызываться её ответная реакция. Поэтому мы просто делаем кнопку "Erase" невыбираемой. Теперь, когда пользователь нажимает <Alt>+<E>, появляется меню "Edit" базового окна, даже при том, что порождённое окно ещё имеет фокус.

или

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4