Динамически изменяемая лицевая панель

Обсуждение, связанное с разработкой ПО верхнего уровня
Ответить
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Динамически изменяемая лицевая панель

Сообщение JohnChaban »

Всем привет.
Есть кластер -данные класса смотри рисунок.
Я знаю что в Labview нет возможность менять лицевую панель в режиме выполнения только в режиме остановки прибора.
Но может какой-то способ уже есть?
Можно ли без остановки прибора убрать например текстовое поле.
Вложения
Лицевая панель
Лицевая панель
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Динамически изменяемая лицевая панель

Сообщение Borjomy_1 »

Да элементарно. доступны все свойства элементов кластера. Надо знать порядковый номер индикатора в кластере и иметь на панели контрол соответствующего типа (ну или сделать соответствующую константу референса). Контрол можно сделать невидимым.
Вложения
Cluster elements visible change.png
Cluster elements visible change.png (18.41 КБ) 6926 просмотров
Cluster elements visible change.vi
сохранен в 2012
(6.27 КБ) 174 скачивания
AndreyDmitriev

Activity Professionalism Tutorials Gold Black
VIP
VIP
Сообщения: 1327
Зарегистрирован: 03 фев 2010, 00:42
Награды: 6
Версия LabVIEW: 6.1 - 2024
Откуда: Германия
Благодарил (а): 1 раз
Поблагодарили: 38 раз
Контактная информация:

Re: Динамически изменяемая лицевая панель

Сообщение AndreyDmitriev »

JohnChaban писал(а):Всем привет.
Есть кластер -данные класса смотри рисунок.
Я знаю что в Labview нет возможность менять лицевую панель в режиме выполнения только в режиме остановки прибора.
Но может какой-то способ уже есть?
Можно ли без остановки прибора убрать например текстовое поле.
В принципе коллега выше прав, так сделать можно. Но вот сакральный смысл менять видимость элементов в приватном кластере данных класса от меня честно говоря ускользает. Он на то и приватный, что вы его показывать пользователю в общем-то не должны. Для доступа к данным класса вы используете методы. Для отображения и изменения данных пользователю вы делаете свой интерфейс, который заполняется данными класса путём вызова соотвтетствующих методов - в этом один из фундаментальных принципов ООП. А так вы просто нарушаете инкапсуляцию.
Аватара пользователя
Jakob Brontfeyn

Activity Gold Silver Black
expert
expert
Сообщения: 1729
Зарегистрирован: 28 фев 2008, 11:01
Награды: 6
Благодарил (а): 1 раз
Контактная информация:

Re: Динамически изменяемая лицевая панель

Сообщение Jakob Brontfeyn »

посмотрите еще здесь
http://www.labviewportal.org/viewtopic.php?f=21&t=6317
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: Динамически изменяемая лицевая панель

Сообщение JohnChaban »

А добавить элемент? Как
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Динамически изменяемая лицевая панель

Сообщение Borjomy_1 »

А добавить элемент? Как
Никак. И удаление элемента формальное - поле данных остается, только не показывается.
Аватара пользователя
taras_33

Activity
professional
professional
Сообщения: 391
Зарегистрирован: 31 окт 2009, 18:25
Награды: 1
Версия LabVIEW: 2019
Поблагодарили: 13 раз
Контактная информация:

Re: Динамически изменяемая лицевая панель

Сообщение taras_33 »

Borjomy_1 писал(а):
А добавить элемент? Как
Никак. И удаление элемента формальное - поле данных остается, только не показывается.
Ну я бы так категорически не утверждал. Почитайте к примеру вот эту ветку Там есть пара примеров, которые я приаттачил

PS особенно понравился CtrsOnDemand
Вложения
Dynamic Control Creation.zip
(178.45 КБ) 180 скачиваний
CtrsOnDemand.zip
(602.4 КБ) 195 скачиваний
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Динамически изменяемая лицевая панель

Сообщение Borjomy_1 »

Почитайте к примеру вот эту ветку
Сомнительные костыли.... И данном случае вообще рассматривается элемент кластера.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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