Delphi: ActionList, speciális shortcutok beállítása

Programozással kapcsolatos cikkek / Delphi (1573 katt)

Ha a Delphiben egy ActionList komponensen belül létrehozott Action ShortCut tulajdonságát be szeretnénk állítani, akkor tapasztalataim szerint az Object Inspector nem minden lehetőséget fogad el. Ha például a Ctrl+A értéket írjuk be, akkor azt minden probléma nélkül elfogadja, ám a Ctrl++ vagy a Ctrl+- értékek beírása esetén az Invalid property value üzenetet kapjuk. Pedig ez legális és több helyen alkalmazott lehetőség, gondoljunk pl. a Firefox Nagyítás és Kicsinyítés funkciójára.

Ha mégis el szeretnénk érni, hogy a programunk reagáljon az előbb említett billentyűkombinációkra, és ezen túl a Ctrl+0-ra is, akkor azt az alábbi módon érhetjük el:

uses Menus;
...
ActionZoomIn.ShortCut:=Menus.ShortCut(VK_ADD, [ssCtrl]);
ActionZoomOut.ShortCut:=Menus.ShortCut(VK_SUBTRACT, [ssCtrl]);
ActionZoomDefault.ShortCut:=Menus.ShortCut(VK_NUMPAD0, [ssCtrl]);

Előző oldal Kapitány