Имя: Пароль:
1C
1C 7.7
v7: Как узнать какую кнопку на клавиатуре нажал пользователь?
,
0 sysadminlk
 
06.10.14
15:12
Как узнать какую кнопку на клавиатуре нажал пользователь.
1 Ненавижу 1С
 
гуру
06.10.14
15:13
зачем?
2 Torquader
 
06.10.14
15:16
Самый гарантированно надёжный способ - установить драйвер-фильтр устройств ввода - тогда можно не только узнать, но и изменить в процессе обработки.
3 пипец
 
06.10.14
15:17
4 lavalit
 
06.10.14
15:17
Formex в помощь.... там можно
5 Злопчинский
 
06.10.14
15:18
формекс, предопределенная ПриНажатииКнопкиКлавиатуры... кажись так... - у мну на ней вся работа на ТСД построена была
6 Ёпрст
 
06.10.14
15:19
можно и штатно, и без вк
7 Ёпрст
 
06.10.14
15:19
и.. несколькими способами
8 lavalit
 
06.10.14
15:20
Процедура ПриНажатииКнопкиКлавиатуры(<?>,,,,,,)
КонецПроцедуры
Синтаксис:
Процедура ПриНажатииКнопкиКлавиатуры(<Контекст>,<КодКлавиши>,<Alt>,<Shift>,<Ctrl>,<Символ>,<ФСО>)
КонецПроцедуры
Назначение:
Предопределенная процедура при нажатии кнопки клавиатуры.
Пареметры:
<Контекст> - контекст формы
<КодКлавиши> - код нажатой кнопки клавиатуры.
<Alt> - флаг нажатия кнопки <Alt>.
<Shift> - флаг нажатия кнопки <Shift>.
<Ctrl> - флаг нажатия кнопки <Ctrl>.
<Символ> - символ нажатой кнопки в формате ASCII.
<ФСО> - флаг стандартной обработки. Изначально равен 1. Если в теле процедуры сбросить
значение в 0, то стандартная обработка события не вызывается.
Пример:
Процедура ПриНажатииКнопкиКлавиатуры(конт, код, _а, _ш, _к)
        Предупреждение(Нажата кнопка клавиатуры.);
КонецПроцедуры
9 Злопчинский
 
06.10.14
15:20
(7) давай уже, не томи! ;-)
10 Ёпрст
 
06.10.14
15:20
(9) та нафига ?
проще формексом..
11 Ёпрст
 
06.10.14
15:20
это так, кому интересно, разве что
12 lavalit
 
06.10.14
15:21
Здесь н етолько какая кнопа но и с чем в паре она нажмата))))
13 Ёпрст
 
06.10.14
15:22
ну и.. (8) лучше не использовать для этого
14 Ёпрст
 
06.10.14
15:22
есть другой метод в формексе
15 Злопчинский
 
06.10.14
15:23
(14) о блин... при ОтжатииКОпкиКлавиатуры? или как..?
16 lavalit
 
06.10.14
15:24
(15) при отжатии это про мышь было там левую ил иправую.. проклаву по моему не было такого
17 lavalit
 
06.10.14
15:24
(15) может конечно формекс постарел у меня.. но вродь новенький как будто бы))
18 sysadminlk
 
06.10.14
15:25
Процедура ПриНажатииКнопкиКлавиатуры(КодКлавиши,Альт,Шифт,Ктрл,Символ,ФСО)
    Сообщить(КодКлавиши);
    Сообщить(Альт);
    Сообщить(Шифт);
    Сообщить(Ктрл);
    Сообщить(Символ);
    Сообщить(ФСО);
КонецПроцедуры    // ПриНажатииКнопкиКлавиатуры


То что надо!
Спасибо.

Помню что гдето видел а где забыл )))
19 Злопчинский
 
06.10.14
15:26
(18) ФСО надо не сообщать, а контролировать/устанавливать ;-)
20 lavalit
 
06.10.14
15:27
ну на здоровье... а если не секрето.. нафик такое надо? Поди ещ ев глобальнике будешь ловить или локально на форме?
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший