Ввести параметры в необходимом диапазоне или диалоговое окно
-
- interested
- Сообщения: 3
- Зарегистрирован: 10 май 2017, 20:46
- Версия LabVIEW: 12
- Контактная информация:
Ввести параметры в необходимом диапазоне или диалоговое окно
Возможно проблема уже решалась, но я правда не знаю, как её сформулировать коротко, чтобы найти по ключевым словам.
Создаю алгоритм действий для работы с магнитроном и очень нужно, чтобы в ниже приведенные строки пользователь вводил значения входящие в диапазон и после нажатия кнопки, допустим, "ввод данных" он мог продолжить работу с прибором, либо, если данные не входят в диапазон, прочел сообщение в диалоговом окне: в той то строке то-то введено неверно.
Ход моего решения. Сделал для каждой своеобразные фильтры как смог при правильно введенном значении в итоге получаю true, при неправильном - диалоговое окно.
К сожалению не могу придумать способ, при котором пользователя не забрасовало бы диалоговыми окноми без возможности исправить введенные значения. Таймер вводить тоже не вариант
Прошу помочь
-
- doctor
- Сообщения: 2211
- Зарегистрирован: 28 июн 2012, 09:32
- Награды: 3
- Версия LabVIEW: 2009..2020
- Откуда: город семи холмов
- Благодарил (а): 27 раз
- Поблагодарили: 27 раз
Re: Ввести параметры в необходимом диапазоне или диалоговое
У каждого числового контрола, в его свойствах, есть вкладка "Data Entry". Там настраиваются допустимые диапазоны и реакция на выход за их пределы. Используя эти свойства ничего лишнего городить не нужно.
Re: Ввести параметры в необходимом диапазоне или диалоговое
1. Отойдите от магнетрона!
2. Выполняйте проверку введенных значений только по нажатию кнопки.
2. Выполняйте проверку введенных значений только по нажатию кнопки.
-
- interested
- Сообщения: 3
- Зарегистрирован: 10 май 2017, 20:46
- Версия LabVIEW: 12
- Контактная информация:
Re: Ввести параметры в необходимом диапазоне или диалоговое
Что на счёт тех пунктов, где нужно включить, например, блок питания?Borjomy_1 писал(а):У каждого числового контрола, в его свойствах, есть вкладка "Data Entry". Там настраиваются допустимые диапазоны и реакция на выход за их пределы. Используя эти свойства ничего лишнего городить не нужно.
Хотелось бы конечно с диалоговыми окнами решить проблему, с data entry несерьезно получается. В официальной программе для устройства нет уже введенных параметров, а с data entry будет уже введено минимальное значение.
Помогите пожалуйста, знающие люди :)
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: Ввести параметры в необходимом диапазоне или диалоговое
Чтобы пользователя не забрасывало диалоговыми окнами, самое простое решение - это проверять значения не паралельно, как сейчас Вы сделали, а последовательно. Можно во вложенных кейс структурах, где на вкладках True будет следующая проверка, а на False будет выскакивать диалоговое окно. Таким образом, диалог будет лишь один раз, даже если было введено неправильно несколько параметров.
Или же проверяйте значения тоже последовательно, во вложенных структурах; но если какое-то значение неправильное, то не показывайте диалоговое окно, а гененируйте просто строку для диалогового окна. По окончанию проверки, после Case Structure, показывайте всю полученную строку, со всеми сообщениями, если таковые имеются.
Или же проверяйте значения тоже последовательно, во вложенных структурах; но если какое-то значение неправильное, то не показывайте диалоговое окно, а гененируйте просто строку для диалогового окна. По окончанию проверки, после Case Structure, показывайте всю полученную строку, со всеми сообщениями, если таковые имеются.
Мы делили апельсин - много наших полегло...
-
- interested
- Сообщения: 3
- Зарегистрирован: 10 май 2017, 20:46
- Версия LabVIEW: 12
- Контактная информация:
Re: Ввести параметры в необходимом диапазоне или диалоговое
Звучит прямо так, как мне нужно. Но в таком случае пользователя возможно будет забрасывать только одним диалоговым окном - первым, ведь изначально в строке будет 0. Если я вас неправильно понял, немогли бы вы показать один маленький пример, а я бы подхватил как-нибудь.Kosist писал(а):Чтобы пользователя не забрасывало диалоговыми окнами, самое простое решение - это проверять значения не паралельно, как сейчас Вы сделали, а последовательно. Можно во вложенных кейс структурах, где на вкладках True будет следующая проверка, а на False будет выскакивать диалоговое окно. Таким образом, диалог будет лишь один раз, даже если было введено неправильно несколько параметров.
Или же проверяйте значения тоже последовательно, во вложенных структурах; но если какое-то значение неправильное, то не показывайте диалоговое окно, а гененируйте просто строку для диалогового окна. По окончанию проверки, после Case Structure, показывайте всю полученную строку, со всеми сообщениями, если таковые имеются.
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: Ввести параметры в необходимом диапазоне или диалоговое
Ага, я не обратил внимание на структуру виайки...Hellscream писал(а):Звучит прямо так, как мне нужно. Но в таком случае пользователя возможно будет забрасывать только одним диалоговым окном - первым, ведь изначально в строке будет 0. Если я вас неправильно понял, немогли бы вы показать один маленький пример, а я бы подхватил как-нибудь.
Вам нужно использовать Event Structure, посмотрите пример:
- Вложения
-
- Enter data.vi
- (10.94 КБ) 93 скачивания
Мы делили апельсин - много наших полегло...
-
- doctor
- Сообщения: 2211
- Зарегистрирован: 28 июн 2012, 09:32
- Награды: 3
- Версия LabVIEW: 2009..2020
- Откуда: город семи холмов
- Благодарил (а): 27 раз
- Поблагодарили: 27 раз
Re: Ввести параметры в необходимом диапазоне или диалоговое
К чему эти заигрывания с пользователем? Выберите рабочую комбинацию значений и установите их значениями по умолчанию. При вызове VI сбрасывайте FP в состояние по умолчанию. Также обратите внимание на мастер Programming->Dialog & User Interface->Prompt User. Вы можете в общих чертах сформулировать список данных, а потом выбрать на VI на диаграмме Front Panel и получить "стандартный" диалог, который потом можно подредактировать. Либо использовать его как образец. Проверку комбинации значений лучше делать через Event Structure (по событию Value Change). В вашем случае обратите внимание именно на комбинацию значений, а не на диапазоны контролов по отдельности. Наверняка есть недопустимые комбинацииЧто на счёт тех пунктов, где нужно включить, например, блок питания?
Хотелось бы конечно с диалоговыми окнами решить проблему, с data entry несерьезно получается. В официальной программе для устройства нет уже введенных параметров, а с data entry будет уже введено минимальное значение.