helpf.pro
Регистрация
 0 
Распечатать

Имитация (программное) нажатия Клавиш

В системе "1С:Предприятие" часто возникает ситуация, когда нужно закрыть окно сообщений, появляющееся при вызове метода Сообщить. Стандартно это окно закрывается при нажатии комбинации клавиш <Ctrl>+<Shift>+<Z>, но можно сделать это и программно.
Код 1C v 8.х
 //В ходе выполнения некоторого кода открывается окно сообщений 
Сообщить("Сегодня: " +ТекущаяДата());

//Выполнение другой части кода

//Теперь нам необходимо закрыть окно сообщений
Wsh = Новый СОМОбъект("Wscript.shell");
//Wsh - переменная. Можно было дать любое другое имя, например Окно
Wsh.SendKeys("^+z"); //имитируем нажатие Ctrl+Z
Wsh.SendKeys("^+я"); //для случая, если текущей является русская раскладка клавиатуры


В результате выполнения данного кода окно сообщений будет закрыто. Теперь поясним работу этого небольшого куска программы. SendKeys(String) - имитируется нажатие клавиши или последовательности клавиш, указанных в параметре String. В качестве параметра можно указывать как алфавитно-цифровые символы, так и символы специальных клавиш, например "Enter", "Tab", "F1", "Alt", "Shift", "Ctrl" и т.д. Для указания клавиш "Alt", "Shift", "Ctrl" существуют специальные коды:
· "Shift" - +;
· "Ctrl" - ^;
· "Alt" - %.
Если возникнет необходимость передать специальные символы именно как символы, а не команды, нужно заключать их в фигурные скобки, например {+}.
Разместил:   Версии: | 8.x | 8.2 УП |  Дата:   Прочитано: 19366
 0 
Распечатать
Возможно, вас также заинтересует
1C: Enterprise Development Tools 35
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем
QR код в 1С 10
Столкнулся с интересной задачей реализации генерации QR-кода в 1С 8.2 ( QR-код — матричный код (двухмерный штрихкод) ) Для генерации было использовано api от google (http://chart.apis.google.com/chart). Вот сайт , который работает с ним. После...
ZIP-архив Создание 0
Для того чтобы записать файлы в ZIP-архив необходимо выполнить несколько простых действий: * Создать архив с необходимыми параметрами, в который будут помещаться файлы. * Поместить в архив необходимые файлы. * Записать...
Активация открытой книги Excel для корректировки 0
Нужно было получить для изменения уже открытую книгу Excel, а если она закрыта, то открыть и изменять. Ниже код, который данную задачу решает. Попытка Эксель = Неопределено; Книга = Неопределено; Лист = Неопределено; ...
Ввод по строке - поиск по первым символам или в любом месте наименования 0
При разработке конфигурации, для упрощении ввода документов потребовалось настроить ввод номенклатуры по совпадению любой части наименования! В 1С 8.3 по умолчанию настройки справочника номенклатуры такие: При...
Посмотреть все результаты поиска похожих
Комментарии
Voittamaton
29.03.2014 18:08Комментарий: 1
Voittamaton
При попытке свернуть/развернуть дерево с помощью имитации клавиш Ctrl + Shift + "+/-" (на цифровой клавиатуре) выдаётся ошибка "Произошла исключительная ситуация (0x80070057)". Ошибка выдаётся именно при использовании цифровой клавиатуры:

Код 1C v 8.х
 Ws = Новый COMОбъект("Wscript.shell");
Ws.SendKeys("^+({Pad-})");


Код 1C v 8.х
 Ws = Новый COMОбъект("Wscript.shell");
Ws.SendKeys("^+({Subtract})");


Может быть кто-нибудь сталкивался с подобной задачей?
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.