Вызов фронт панели SubVI

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

Activity
developer
developer
Сообщения: 261
Зарегистрирован: 22 дек 2008, 14:07
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Вызов фронт панели SubVI

Сообщение irena_abr »

Как можно получить фронт панель SubVI? Т.е. , мне нужно получить список всех subVI главного VI, потом получить фронт панели этих SubVI для того, чтобы перевести все контролы всех SubVIна другои язык. Спасибо
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Вызов фронт панели SubVI

Сообщение mzu2006 »

Property node на объект класса ссылка на :vi: -> Callees' Names выдаёт имена всех :vi: вызываемых из того :vi: на который открыта ссылка
irena_abr

Activity
developer
developer
Сообщения: 261
Зарегистрирован: 22 дек 2008, 14:07
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Вызов фронт панели SubVI

Сообщение irena_abr »

Спасибо! А как потом открыть фронт панель каждого из SubVi? Нужен еще путь или референсе на каждыи SubVI?
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Вызов фронт панели SubVI

Сообщение mzu2006 »

потом этот массив строк в цикле на вход "Open reference" - получаешь массив ссылок. У каждой из ссылок (из тех, что получилось открыть) -> в Property node -> Front panel
irena_abr

Activity
developer
developer
Сообщения: 261
Зарегистрирован: 22 дек 2008, 14:07
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Вызов фронт панели SubVI

Сообщение irena_abr »

Спасибо!
irena_abr

Activity
developer
developer
Сообщения: 261
Зарегистрирован: 22 дек 2008, 14:07
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Вызов фронт панели SubVI

Сообщение irena_abr »

Оказалось, что вложенность VI большая. Как бы зациклить получение всех имен SubVi и ссылок? Т.е. получить массив абсолютно всех имен и ссылок Sub Vi .Я запуталась.Подскажите, а?
Аватара пользователя
FireFly

Activity Black
expert
expert
Сообщения: 1321
Зарегистрирован: 25 апр 2009, 08:58
Награды: 2
Версия LabVIEW: 2014
Откуда: Санкт-Петербург
Поблагодарили: 1 раз

Ещё вопрос.

Сообщение FireFly »

Делаю как на изображении. В итоге на входе в цикл получаю массив Refence на все элементы Control на FP SubVI. Теперь вопросы:
1) Как получить Reference на те элементы которые лежат не на самой FP, а в TabControl (В массиве Reference их нет).
2) Проверив ClassName я отсортировал только нужные мне элементы из всех. Но отобранные Reference не обладают свойством этого класса. Подав их на вход Property Node я не имею необходимых мне свойств этого класса. Как принудительно создать PropertyNode нужного мне типа (или как поменять класс reference), или как получить массив reference только нужного мне типа.
Вложения
S.JPG
Иногда лучше молчать и слыть идиотом, чем заговорить и развеять все сомнения.
Аватара пользователя
FireFly

Activity Black
expert
expert
Сообщения: 1321
Зарегистрирован: 25 апр 2009, 08:58
Награды: 2
Версия LabVIEW: 2014
Откуда: Санкт-Петербург
Поблагодарили: 1 раз

Re: Вызов фронт панели SubVI

Сообщение FireFly »

irena_abr писал(а):Оказалось, что вложенность VI большая. Как бы зациклить получение всех имен SubVi и ссылок? Т.е. получить массив абсолютно всех имен и ссылок Sub Vi .Я запуталась.Подскажите, а?
Слегка извращенно получилось, но общий принцип вроде верен. Первая половина изображения считывает все SubVI 1-ой глубины. Далее полученный массив через цикл подаём на точно такое же считываение. Получаем двумерный массив всех SubVI второй глубины. В зависимости от максимальной глубины вложения проделываем аналогичную операцию нужное количество раз. Уверен что применив ещё один цикл с шифтрегистром можно сделать всё очень компактно и красиво, но щас просто быстренько набросал.
Вложения
S.JPG
S.JPG (12.24 КБ) 5326 просмотров
Иногда лучше молчать и слыть идиотом, чем заговорить и развеять все сомнения.
irena_abr

Activity
developer
developer
Сообщения: 261
Зарегистрирован: 22 дек 2008, 14:07
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Вызов фронт панели SubVI

Сообщение irena_abr »

На 1 вопрос попробуите так:PropertyNode - >Tabctl Pages - >Page ->CtlonPage
И посмотрите вот это: http://www.labviewportal.org/viewtopic. ... 0%BE%D0%B4
Аватара пользователя
FireFly

Activity Black
expert
expert
Сообщения: 1321
Зарегистрирован: 25 апр 2009, 08:58
Награды: 2
Версия LabVIEW: 2014
Откуда: Санкт-Петербург
Поблагодарили: 1 раз

Re: Вызов фронт панели SubVI

Сообщение FireFly »

irena_abr писал(а):На 1 вопрос попробуите так:PropertyNode - >Tabctl Pages - >Page ->CtlonPage
И посмотрите вот это: http://www.labviewportal.org/viewtopic. ... 0%BE%D0%B4
Спасибо за указания пути к ссылкам на элементы таба. Какой-то он не очень очевидный. Без пол-литра не разберешься :D
Теперь всё упирается в то что для Reference элемента Control в общем случае эти свойства недоступны. Как собственно и сказанно в одном из сообщений в теме по ссылке: "Но надо учитывать, что ты не получаешь доступ ко всем свойствам контрола, так как не совсем известен тип контрола."
Иногда лучше молчать и слыть идиотом, чем заговорить и развеять все сомнения.
Аватара пользователя
Konstantin Sumenko

Activity Bronze
expert
expert
Сообщения: 1439
Зарегистрирован: 17 июл 2008, 12:20
Награды: 2
Версия LabVIEW: 2010
Откуда: Moscow
Поблагодарили: 1 раз
Контактная информация:

Re: Вызов фронт панели SubVI

Сообщение Konstantin Sumenko »

Поэтому используй To More Specific Class.
irena_abr

Activity
developer
developer
Сообщения: 261
Зарегистрирован: 22 дек 2008, 14:07
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Вызов фронт панели SubVI

Сообщение irena_abr »

Спсибо, FireFlay, за вложенные циклы! На данном этапе заработало!
Аватара пользователя
FireFly

Activity Black
expert
expert
Сообщения: 1321
Зарегистрирован: 25 апр 2009, 08:58
Награды: 2
Версия LabVIEW: 2014
Откуда: Санкт-Петербург
Поблагодарили: 1 раз

Re: Вызов фронт панели SubVI

Сообщение FireFly »

irena_abr писал(а):Спсибо, FireFlay, за вложенные циклы! На данном этапе заработало!
Мой ник не так пишется :wink:
Иногда лучше молчать и слыть идиотом, чем заговорить и развеять все сомнения.
irena_abr

Activity
developer
developer
Сообщения: 261
Зарегистрирован: 22 дек 2008, 14:07
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Вызов фронт панели SubVI

Сообщение irena_abr »

Sorry, sorry, sorry Fire Fly, Fire Fly, Fire Fly, Fire Fly!!!!!!!! :thank:
Аватара пользователя
FireFly

Activity Black
expert
expert
Сообщения: 1321
Зарегистрирован: 25 апр 2009, 08:58
Награды: 2
Версия LabVIEW: 2014
Откуда: Санкт-Петербург
Поблагодарили: 1 раз

Re: Вызов фронт панели SubVI

Сообщение FireFly »

:D
Иногда лучше молчать и слыть идиотом, чем заговорить и развеять все сомнения.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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