Швидкий доступ для меню, delphi-faq

Комбінації клавіш служать для швидкого виклику часто використовуваних команд меню. Комбінації клавіш також називають «гарячими» клавішами, швидкими клавішами або акселераторами. Зазвичай комбінації клавіш задаються при розробці програми у вікні Інспектора об'єктів. При виконанні програми також можна задати або змінити комбінації клавіш для окремих пунктів меню. Комбінації клавіш задаються через властивості Caption і ShortCut.

На відміну від швидких клавіш (shortcut keys), які дозволяють виконати команду, не відкриваючи меню, «гарячі» клавіші (hot key) використовуються тільки при активному (відкритому) відповідному меню.

Набрану комбінацію клавіш містить властивість HotKey типу TShortCut. Значення цієї властивості можна привласнити властивості ShortCut настроюється пункту меню.

При натисканні кнопки btnApply пункту mnExit призначається нова комбінація клавіш, введена користувачем в поле компонента HotKey1.

Властивості Modifiers і InvalidKeys

Для управління можливим набором комбінацій клавіш використовуються властивості Modifiers і InvalidKeys.

Властивість Modifiers типу THKModifiers визначає, які керуючі клавіші використовуються за замовчуванням при завданні комбінації клавіш.

Це властивість множинного типу і може приймати комбінації наступних значень:

  • hkShift (в комбінації використовується клавіша );
  • hkCtrl (в комбінації використовується клавіша );
  • hkAlt (в комбінації використовується клавіша ) - за замовчуванням;
  • hkExt (в комбінації немає керуючих клавіш).

hcNone (неприпустимі немодифіковані клавіші);

hcShift (неприпустима клавіша );

hcCtrl (неприпустима клавіша );

hcAlt (неприпустима клавіша );

hcShiftCtrl (недопустима комбінація клавіш +);

hcShiftAlt (недопустима комбінація клавіш +);

hcCtrlAlt (недопустима комбінація клавіш +);

hcShiftCtrlAlt (недопустима комбінація клавіш ++).

За замовчуванням властивість InvalidKeys має значення [hcNone, hcShift].

Схожі статті