8.х Получить код нажатой клавиши

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем olbig, 16 мар 2012.

  1. TopicStarter Overlay
    olbig
    Offline

    olbig

    Регистрация:
    16 мар 2012
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Есть необходимость получать и анализировать в обработке код нажатой клавиши. В инете ничего не нашёл. Предполагаю, что это можно сделать через скрипт COM-объекта. Если кто знает ответ данной задачки, подмогите.
  2. vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    Встроенные функции языка (Script functions)
    Символ (Char)
    Синтаксис:Символ(<Код символа>)
    Параметры:
    <Код символа> (обязательный)Тип: Число. Код получаемого символа. Код задается в соответствии с кодировкой Unicode.
    Возвращаемое значение:Тип: Строка. Результирующий символ.
    Описание:Преобразует код символа в строку, содержащую символ.
    Пример:
    Буква_Я = Символ(1103);

    Встроенные функции языка (Script functions)
    КодСимвола (CharCode)
    Синтаксис:КодСимвола(<Строка>, <Номер символа>)
    Параметры:
    <Строка> (обязательный)Тип: Строка. Исходная строка.
    <Номер символа> (необязательный)Тип: Число. Номер символа в строке, код которого необходимо получить. Нумерация символов в строке начинается с 1.
    Значение по умолчанию: 1
    Возвращаемое значение:Тип: Число. Код переданного символа. Код возвращается в соответствии с кодировкой Unicode.
    Описание:Получает код символа, расположенного в переданной строке в позиции с указанным номером.
    Пример:
    КодПервогоСимволаФамилии = КодСимвола(Сотрудник.Фамилия);

    + у кнопки есть свойство "сочетание клавиш".. финт ушами - расположить на клаве невидимые кнопки ;)))

    в общем от задачи надо скакать - что вы хотите получить в итоге?
  3. TopicStarter Overlay
    olbig
    Offline

    olbig

    Регистрация:
    16 мар 2012
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Для начала задача простая: прервать выполнение обработки по нажатию клавиши. <Ctrl + Break> и ОбработкаПрерыванияПользователя() не срабатывает, хотя стоит в цикле, управление передаётся по кнопке <Нажатие> из формы. Причём, в отладчике работает, а без отладчика не реагирует. Прочитал где-то на форуме, что драйвер клавиатуры может выдавать не код "19", а "3". Надо переустанавливать другой драйвер.... Хотелось попробовать поиграть другими клавишами, например, Esc. А вообще, вещь полезная, например, передача управления процедуре при нажатии определённой клавиши. В своё время работал на Clipper, очень было удобно.

    финт ушами - не знаю, как это сделать и что даёт

    Ещё забыл - обработка работатет на Клиенте.

Поделиться этой страницей