Что такое CompoundCallable?
Я работаю со скриптами Python в программном обеспечении Ignition HMI (Java-бэкэнд) Inductive Automation. Я пытаюсь написать сценарий, который находит другие сценарии, которые связаны с определенными объектами. В настоящее время у меня есть
result = window.getRootContainer().getComponent("Group 1").getComponent("TheObject").mouseClicked
который получает окно с моим объектом, входит в корневой контейнер этого объекта, затем в группу, в которой находится объект, и, наконец, в сценарий, связанный с событием mouseClicked в TheObject. Когда я запускаю это и печатаю результат, я не получаю сообщение об ошибке, но:
<CompoundCallable with 0 callables>
Кто-нибудь видел это раньше? Кто-нибудь знает, что мне может понадобиться изменить в моей первой строке кода, чтобы получить доступ к фактическим данным, хранящимся в скрипте mouseClicked?
2 ответа
Похоже, нет кода, связанного с mouseClicked
событие этого объекта.
CompoundCallable
это "композиция вызываемых объектов", что-то вызываемое, которое вызывает несколько вызываемых элементов - своего рода вызываемый контейнер. Он используется для регистрации нескольких функций в одном обработчике событий.
Однако ваш CompoundCallable
содержит ноль вызываемых. Это означает, что ничего не будет вызвано, если вы позвоните.
Если я понимаю, что вы спрашиваете, я не верю, что вы сможете получить доступ к данным, содержащимся в этом сценарии (переменные и т. Д.). Вы могли бы сделать так, чтобы скрипт mouseClicked записывал данные во что-то другое для доступа к данным. Для этого есть несколько возможностей: Свойство пользовательского окна, Свойство пользовательского компонента или тег.