Активируем кнопку/поле/флажок/таблицу в редакторе управляемой формы и вызываем команду скрипта.
ТурбоКонф.ПолучитьТипТекущегоЭлемента()
ТурбоКонф.ПолучитьНазваниеТипаТекущегоЭлемента()
Получаем всегда "панель", а ожидался реальный тип элемента. Причем ПолучитьНазваниеТипаТекущегоЭлемента() возвращает перечисление вместо строки.
2. В ней вычисляем
ТурбоКонф.ПолучитьИмяЭлемента()
Получим пустое имя, а ожидалось реальное имя.


#1, 06 марта 2025 12:08
При активации элементов редактора УФ, 1С в UIAutomation не отдает этот элемент как текущий. При некоторых манипуляциях кликами по элементам, можно добиться, что фокус меняется и тогда АПИ отдает верный элемент, кроме метода ПолучитьНазваниеТипаТекущегоЭлемента (в нем видимо ошибка).
#2, 06 марта 2025 12:13
Это же видно, если проверять смену фокуса через программу Inspect, при выбранном обновлении при смене фокуса.
Понял как воспроизвести.

#3, 06 марта 2025 12:13
Таким образом это баг платформы.
#4, 06 марта 2025 12:40
Update:
ТурбоКонф.ПолучитьИмяЭлемента() - также возвращает элемент правильно, т.к. такой активный элемент UIAutomation отдает платформа
Если использовать ПолучитьИмяТекущегоЭлемента, то в нем будет значение основанное на событии смены фокуса (правильное) кроме случая с когда оно не обновляется из-за бага платформы.
#5, 06 марта 2025 13:42
Смотри второй снимок окна. Там видно что механизм UIAutomation получил текущий элемент правильно - кнопка "Записать". Вот хочется, чтобы бы тем же путем и Турбоконф его получал, если это не требует больших переделок.
#6, ред. 06 марта 2025 14:40
(5) tormozit, я выше написал, что ТК тоже правильно получает.
Эта программа получает элемент под указателем, а не текущий. Если кликнуть быстро и не дать ему время, увезти указатель на другой элемент. То он и покажет другой элемент под указателем.
Проверяй на Inspect, отключив получение элемента под указателем, а только при смене фокуса.
И кликай так как я показал в примере.
#7, ред. 07 марта 2025 20:28
Утилита Inspect устарела и часто зависает. Поэтому я ею давно уже не пользуюсь.
В современной утилите есть режим захвата элемента наведением указателя, но я его отключил. К тому же у элемента включен признак Focusable. Это видно даже на первом снимке. Сделал новые снимки для надежности.
#8, 08 марта 2025 14:22
(7) tormozit, процитирую еще раз, больше мне нечего добавить
из-за бага платформы, событие смены фокуса срабатывает не всегда
наглядный пример, активный элемент - Команда3, фокус в UIA не сменился
#9, 08 марта 2025 14:25
Вот ТурбоКонф также определяет тип элемента правильно, когда платформа обрабатывает правильно
#10, ред. 08 марта 2025 14:29
Да, похоже это плавающая проблема платформы, т.к. иногда у меня и через Турбоконф тоже правильно срабатывало.
#11, 09 марта 2025 13:46
bolsun изменил статус на Баг платформы