Есть варианты. На удобство использования не претендую. Но на безрыбье и рак рыба.
В любом случае решение требует наличия/добавления кнопок (можно невидимых).
Идея сворована в модуле Shop floor control.
1. Без кодирования (но с редактированием меток).
Аксапта автоматически назначает горячие клавиши для кнопок (и только для кнопок в формах) по хитрому алгориму: берет первую букву текста в метке и назначает нажатие комбинации [Alt] + <символ в метке>. Символ в кнопке при этом подчеркивается.
Но есть казус следующего плана. Данное утверждение работает только в случае, если метка написана латинскими символами. Казалось бы, если в метке использовать латинский символ (например, [а) Проводки], [b) Сделать все автоматически]), то с горем пополам проблему можно решить.
Но и тут есть проблема. Если при открытии формы включена русская раскладка, то назначения комбинацй клавиш не произойдет.
Решением может быть использование цифр. Например, [1) Проводки], [2) Сделать все автоматически]. Тогда при нажатии [Alt] + [1] будет "нажиматься" кнопка просмотра проводок...
К сожалению, цифр не много у нас. Но это уже хоть что-то.
2. С кодированием (расширение варианта 1).
В том же Shop floor control можно наблюдать следующий фокус. В АОТе создается кнопочка с неким текстом в свойствах. Например, "1".
Дальше в init() формы ей приделывается совсем другой текст. Например, "Проводки". После того, как открывается форма, она продолжает жрать [Alt] + [1], хотя текст на кнопке красивый.
3. Изящный (относительно много кодирования)
В том же Shop floor control можно наблюдать, как перекрываются функциональные клавиши [F1] .. [F9]. Производится это с помощью .dll-ки. Как это делается я разбираться не стал. Многовато кодирования получается. Кому интересно, сам сможет посмотреть.
Хотя, если припрет, то почему бы и нет.
Правда, перехват радикально начинает работать. Даже в дебагере функциональные клавиши вырубаются.
PS. Это я сам себе написал :-) Когда в следующий раз буду на форуме искать — чтобы смог вспомнить. А то я уже не первый раз ветку читаю.
__________________
С уважением,
glibs®
|