Обойти ошибку 1001

Обсуждение, связанное с разработкой ПО верхнего уровня
Ответить
Artem.spb

Activity Автор
professor
professor
Сообщения: 3394
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Обойти ошибку 1001

Сообщение Artem.spb »

Моя "гениальная" идея разбилась об закрытую панель :(
В проекте несколько окон-вкладок (встраиваются в sub-panel в зависимости от режима).
И в некоторых из окон есть однотипная работа с интерфейсом. В частности, "мышь пришла-ушла". И подумал я, что вполне логично сделать отдельный :vi:-обработчик для этого.
Схема такая: родительский интерфейс при старте запускает асинхронное исполнение ещё одного саба (клон на каждое окно), в котором один цикл с event-стрктурой. В саб передаются ссылки на контролы, за которыми надо следить. Собственно, вот он
1001.png
Всё хорошо, только при запуске программы получаю ошибку 1001 "панель не открыта". Ну да, она ещё не открыта, сейчас в sub-panel встроено другое окно.
Есть ли способ обойти проблему?
Следить, когда буду встраивать и только тогда начинать следить за контролами не вариант, проще уж несколько раз руками создать эти события в основном окне.
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5462
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 28 раз
Поблагодарили: 86 раз

Re: Обойти ошибку 1001

Сообщение IvanLis »

Artem.spb писал(а): 18 сен 2021, 23:32 Всё хорошо, только при запуске программы получаю ошибку 1001 "панель не открыта". Ну да, она ещё не открыта, сейчас в sub-panel встроено другое окно.
Есть ли способ обойти проблему?
Ну раз уж начал делать через "неклассическиеметоды", то выход один.
Обрабатывать ошибку и если она 1001, то игнорить и делать небольшую паузу, до следующей итерации.
Artem.spb

Activity Автор
professor
professor
Сообщения: 3394
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Обойти ошибку 1001

Сообщение Artem.spb »

IvanLis писал(а): 19 сен 2021, 09:28 Обрабатывать ошибку и если она 1001, то игнорить и делать небольшую паузу, до следующей итерации.
Вариант, но похоже, проще руками продублировать. Всё ж не 100500 окон.
Ответить

Вернуться в «Лицевая панель»