|
|
|
Перехват нажатия клавиш (Autokeys?)
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток, уважаемые форумчане. В моей БД на Access имеется несколько форм, в которых используются унифицированные функции Add, Edit, Delete (в каждой форме свой контекст).Создано главное меню с дублированием этих функций. Для вызова в приложении можно использовать как меню, так и горячие клавиши. Вот по ним и вопрос. На данный момент создан макрос Autokeys с перехватом клавиш Insert (функция Add), Delete (функция Delete), F4 (временно для функции Edit). Из любой формы "горячие" клавиши работают превосходно, даже удалось назначить функцию для каждой формы отдельно следующим образом: ----------------------------- Public Function cmdAction(ActType As Integer) As Boolean If Running Then If Left(Screen.ActiveControl.Name, 3) = "lst" Then _ Screen.ActiveForm.DoAction (ActType) End If End Function ----------------------------- Здесь ведется проверка на то, что программа запущена и активизировано поле со списком (все эти функции работают только в списках), после чего запускается подпрограмма DoAction для соответствующей формы. Внимание, вопрос. ;) Как сделать так, чтобы клавиши Insert, Delete в других местах (например, в строках редактирования) срабатывали бы так, как им положено, а не игнорировались (например, в Delphi можно вызвать Inherited "старый обработчик")? Или это невозможно также, как невозможно включение текста горячей клавиши на пользовательском пункте главного меню? И еще. Можно ли создать глобальный обработчик клавиши Enter? Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2004, 13:07:09 |
|
||
|
|

start [/forum/topic.php?fid=45&tid=1672786]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
76ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
19ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 371ms |

| 0 / 0 |
