AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 12.09.2002, 20:26   #1  
Garic is offline
Garic
NavAx
Аватар для Garic
NavAx Club
 
393 / 63 (3) ++++
Регистрация: 23.07.2002
Адрес: Москва
? Можно ли в Аксапте делать "горячие клавиши"?
Неужели нельзя?
Есть метод Task но он отлавливает только несколько комбинаций клавиш.
И почему keyPressed только у TreeControl...
__________________
С уважением, Игорь Ласийчук.
Старый 28.09.2002, 04:19   #2  
Kirya is offline
Kirya
Участник
 
6 / 10 (1) +
Регистрация: 28.09.2002
К сожалению нельзя. Кернел Аксапты сам расставляет горячие клавиши по батонам формы никого не спрашивая
Старый 24.01.2006, 22:16   #3  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Есть варианты. На удобство использования не претендую. Но на безрыбье и рак рыба.

В любом случае решение требует наличия/добавления кнопок (можно невидимых).

Идея сворована в модуле 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®
За это сообщение автора поблагодарили: mazzy (18), Garic (1), ALEG (1), Logger (5), Leshiy_T (1), IvanS (1).
Старый 25.01.2006, 15:22   #4  
vallys is offline
vallys
Developer
 
146 / 108 (0) +++++
Регистрация: 18.01.2005
Цитата:
Сообщение от glibs
... Идея сворована в модуле Shop floor control ...
кто-нибудь, ткните меня носом в форму, пожалуйста, а то я совсем слепой стал...
Старый 25.01.2006, 15:36   #5  
garu is offline
garu
Участник
 
33 / 21 (1) +++
Регистрация: 03.07.2003
Можно, мы сделали
Старый 25.01.2006, 15:38   #6  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от garu
Можно, мы сделали
Так, давайте не будем в стиле
У нас есть такие приборы, но мы вам о них не расскажем

Есть что сказать - скажите.
В общих чертах, что и как?

Если кроме рекламы нечего сказать, то лучше не говорите ничего.
__________________
полезное на axForum, github, vk, coub.
Старый 25.01.2006, 15:42   #7  
Delfins is offline
Delfins
Участник
 
320 / 39 (2) +++
Регистрация: 20.09.2005
Адрес: Riga, Latvia
Цитата:
Правда, перехват радикально начинает работать. Даже в дебагере функциональные клавиши вырубаются.
potomu chto delajetsja standartnij Hook, i tak kak axapta eto owner procesa debuger-a, to Hook-i na klavishi ostajutsja dlja vseh sub-processov
Старый 25.01.2006, 15:59   #8  
lagr221374
Гость
 
n/a
Цитата:
Сообщение от mazzy
Так, давайте не будем в стиле
У нас есть такие приборы, но мы вам о них не расскажем

Есть что сказать - скажите.
В общих чертах, что и как?

Если кроме рекламы нечего сказать, то лучше не говорите ничего.
Насколько я в курсе: существует модуль, позволяющий назначать горячие клавиши в Axapta для групп пользователей модуля, причем по-мимо настроек сделанных в группе на каждой формочке Axapta на каждую кнопку можно повесить свой hot key и это будет твоя личная настройка + можно вешать hot key на определенные действия в Axapta (типа нажал клавишу в окне AOT произошло то-то, нажал в окне редактора кода произошло нечто другое ) + и т.д. Причем назначения происходят в горячем режиме т.е. после назначения можно пользоваться. Модуль не завязан на стандартную функциональность, т.е можно ставить на любое приложение.

Последний раз редактировалось lagr221374; 25.01.2006 в 16:11.
Старый 25.01.2006, 16:32   #9  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от lagr221374
Насколько я в курсе: существует модуль
что такое "модуль"?
Это внешняя dll'ка? Где найти описание этого чуда?
__________________
полезное на axForum, github, vk, coub.
Старый 25.01.2006, 16:37   #10  
lagr221374
Гость
 
n/a
Цитата:
Сообщение от mazzy
что такое "модуль"?
Это внешняя dll'ка? Где найти описание этого чуда?
В смысле модуль как в Axapta (хотя возможно и использует внешнюю dll).
Описалово чуда , наверное можно взять у sale-зов из Columbus.

Последний раз редактировалось lagr221374; 25.01.2006 в 18:13.
Старый 25.01.2006, 16:56   #11  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Цитата:
Сообщение от vallys
...
кто-нибудь, ткните меня носом в форму
...
Управление цехом\Регистрация\Регистрация задания (очередь заданий)

В АОТ это можно посмотреть в

Forms\JmgSignInJob
__________________
С уважением,
glibs®
За это сообщение автора поблагодарили: vallys (2).
Старый 25.01.2006, 17:14   #12  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Ну, если до кучи, то short cut можно назначить для пункта меню. Правда работать он будет только когда соответствующее меню открыто.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 25.01.2006, 19:51   #13  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
База знаний ERP : Axapta / Перехват Нажатий Клавиш - не то, что нужно?
За это сообщение автора поблагодарили: mazzy (18), sparco (1).
Теги
faq, hotkey, полезное

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Можно ли в Аксапте отправлять активным пользователям сообщения Grey DAX: Администрирование 33 02.06.2009 12:13
Можно делать join таблицы к себе же через Query? korvin DAX: Программирование 13 02.03.2006 11:51
Что и как можно резать? George Nordic DAX: Администрирование 1 11.05.2004 18:44
можно ли что-либо "скрыть" от сводного планирования? dyatlowsky DAX: Функционал 7 11.03.2004 18:26
Горячие клавиши для AddIns? konfet DAX: Программирование 3 23.09.2003 15:15

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 11:55.