Имитация нажатии кнопки клавиатуры

1. user1169791 16.12.22 07:03 Сейчас в теме
Добрый день можете пожалуйста подсказать,есть изображение на форме обработки, добавил кнопки приблизить и отдалить, с имитировал нажатие второй кнопки мыши+переход к строке увеличения и уменьшения,все норм. Далее требовалась имитация нажатия стрелок, для шагания по увеличенному изображению, имитация стрелки(любой) делает шаг в нужную сторону и сразу же возвращает обратно, при том пробовал имитировать к примеру {PGUP}, работает, но тут кидает до упора, мне же нужно передвигаться по шагам.
Ребят подскажите пожалуйста в чем может быть проблема.. обработка на упр форме
код который тестил ниже для примера

&НаКлиенте
Процедура ЧертежВверх(Команда)
	  Скрипт = Новый COMОбъект("WScript.Shell");
	  ЭтаФорма.ТекущийЭлемент = Элементы.ТекКартинка;
	  Скрипт.SendKeys("{UP}");
	  
КонецПроцедуры
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. independ 1551 16.12.22 09:15 Сейчас в теме
(1) вставить небольшую паузу перед sendkeys или попробовать подключитьобработчикожидания с минимальной задержкой
3. DBV 16.12.22 10:27 Сейчас в теме
(1) дело в активизации элемента с картинкой. Почему то переходит в центр картинки

Попробуйте без мыши через Tab перейти на картинку и нажать стрелки
Кстати PGUP тоже так работает, то есть один раз как будто работает, а второй и следующие уже нет, так же начинает с центра

И пауза тоже не помогает

А если кнопку добавить в контекстное меню, то работает нормально
4. user1169791 16.12.22 10:41 Сейчас в теме
(3) попробовал результат тот же, такое ощущение что при выполнении команды, слетает ТекщийЭлемент после вызова стрелки и встает обратно
5. user1169791 16.12.22 10:43 Сейчас в теме
6. user1169791 16.12.22 10:45 Сейчас в теме
(3)при том если не программно вызывать, а руками нажимать в контекст.меню или просто на стрелку то работает нормально, но это не выход в моем случае
7. soft_wind 16.12.22 11:07 Сейчас в теме
так вроде кликанье по кнопкам не влияет на текущий элемент, поэтому уберите его из команды

где-то при открытии формы и других событиях делайте картинку текущей, а в самой команде двигания - нет
8. DBV 16.12.22 11:09 Сейчас в теме
(7) почему это не влияет
При нажатии на кнопку текущим элементом становится кнопка
9. user1169791 16.12.22 11:23 Сейчас в теме
(7) так по нажатию кнопки я переопределяю текущий и вызываю его контекстное меню, и оттуда выбираю, т.е. тут как бы все ровно. Проблема где то в другом
10. soft_wind 16.12.22 12:03 Сейчас в теме
(8) может что-то в версиях?
у меня при нажатии на кнопку, остается ЭтаФорма.ТекущийЭлемент = ПолеФормы (Картинка)
а вы как/куда на форме выводите картинку?
11. DBV 16.12.22 12:11 Сейчас в теме
(10) не знаю как у ТС, у меня ПолеФормы с видом ПолеКартинки

Перед присваиванием: ТекущийЭлемент = КнопкаФормы
После присваивания: ТекущийЭлемент = ПолеФормы

И если не менять текущий элемент, то активной остается кнопка и при имитации нажатия кнопки верх, переходит на верхний элемент (у меня это другая кнопка)

Версия платформы: 8.3.22.1704
12. user1169791 16.12.22 12:20 Сейчас в теме
(10) запросом нахожу нужный справочник
оттуда тащу картинку и заполняю в элемент формы
Прикрепленные файлы:
13. soft_wind 16.12.22 12:22 Сейчас в теме
(11) вот если сразу после открытия формы нажать на кнопку, то тек.эл. какая-то панель,
если в форме ткнуть мышкой в картинку, а затем нажать на кнопку, то тек.элементом остается картинка
тоже самое если ПриОткрытии установить текущей Картинку,
Нажатие на кнопку не меняет тек.элемент!
14. DBV 16.12.22 12:34 Сейчас в теме
(13) у меня почему так, выбираю картинку мышкой, потом нажимаю кнопку
Прикрепленные файлы:
15. soft_wind 16.12.22 13:23 Сейчас в теме
да, получилось, КОГДА кнопка расположена "свободно" на форме,
действительно становится текущей при ее нажатии.

переместите кнопку в/на панель формы!
и тогда можете убрать изменение ТекущегоЭлемента
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот