В целом, можно оставить, для лабораторной программы в принципе сойдёт. Можно ещё обработать кое какие ошибки, например, если Word'овского файла не окажется в указанной директории (выход standard error).nactyx писал(а):Или в таком случае возможны какие-нибудь подводные камни?
Проблема с меню
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Проблема с меню
Re: Проблема с меню
dadreamer, обработку подобных ошибок оставляю на потом. Перед выходом в свет, так сказать :)
Теперь такой вопрос.
За плечами только программирование на delphi-подобных языках. Там можно было обрабатывая свойства enable или visible у той же button делать их недоступными или невидимыми соответственно.
Имеем окно лр1. Там три кнопки: описание, начало и завершить. Описание - MS WORD запускает, завершить - в главное меню идем. Теперь начало. Идея заключается вот в чем: нажав на начало - переходим на новый vi, аналогичным образом. А нам нем, куча кнопок с номерами этапов. Т.е. поэтапное выполнение лабораторной работы. Нажав на начало, попали в этот новый vi с этапами, кнопка с 1м этапом активна, все остальные - не кликабельны (пока что). На 1м этапе заполнили несколько полей, ввели какие-то значение, программа такая: ага, значения ввел - можешь нажать на 2й этап. И т.д.
Каким образов подобное реализуется в labview? Если слишком наглый вопрос или т.п. - посоветуйте какой или какие из элементов labview досконально изучить.
Теперь такой вопрос.
За плечами только программирование на delphi-подобных языках. Там можно было обрабатывая свойства enable или visible у той же button делать их недоступными или невидимыми соответственно.
Имеем окно лр1. Там три кнопки: описание, начало и завершить. Описание - MS WORD запускает, завершить - в главное меню идем. Теперь начало. Идея заключается вот в чем: нажав на начало - переходим на новый vi, аналогичным образом. А нам нем, куча кнопок с номерами этапов. Т.е. поэтапное выполнение лабораторной работы. Нажав на начало, попали в этот новый vi с этапами, кнопка с 1м этапом активна, все остальные - не кликабельны (пока что). На 1м этапе заполнили несколько полей, ввели какие-то значение, программа такая: ага, значения ввел - можешь нажать на 2й этап. И т.д.
Каким образов подобное реализуется в labview? Если слишком наглый вопрос или т.п. - посоветуйте какой или какие из элементов labview досконально изучить.
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Проблема с меню
nactyx, советую почитать хотя бы про узлы Property Node и Invoke Node. Невидимость кнопок делается через узел свойств Visible = False, а невозможность нажатия - через узел Disabled = Disabled или Disabled and Grayed Out.
Re: Проблема с меню
dadreamer, в ходе поисков решения различных проблем - часто натыкался на эти узлы, не особо понимая о чем речь.
Тогда вдогонку такой вопрос - актуальные и толковые мануалы по данным вещам имеются на русском языке где-нибудь?
Тогда вдогонку такой вопрос - актуальные и толковые мануалы по данным вещам имеются на русском языке где-нибудь?
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Проблема с меню
nactyx, практически любое свойство в контекстном меню и в свойствах элемента лицевой панели можно изменить программно.
В общем, как и в других языках программирования и платформах разработки ПО.
В общем, как и в других языках программирования и платформах разработки ПО.
Re: Проблема с меню
Почитал пару мануалов, посмотрел туториал, набросал небольшой примерчик:
Основы вроде бы усвоил. Такой момент, имеем например две строки для ввода и кнопку. Нужно сделать, чтобы кнопка становилась доступной только после того, как был введен какой-либо текст в эти строки. Не могу понять какое из свойства строк ввода проверять и "куда" вести провод..
Основы вроде бы усвоил. Такой момент, имеем например две строки для ввода и кнопку. Нужно сделать, чтобы кнопка становилась доступной только после того, как был введен какой-либо текст в эти строки. Не могу понять какое из свойства строк ввода проверять и "куда" вести провод..
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Проблема с меню
nactyx, самое простое - сравнивать строку с пустой строкой или с её предыдущим значением в цикле. Посложнее - обрабатывать событие нажатия клавиши на контроле.
Re: Проблема с меню
Всем доброго времени суток.
По поводу сравнения, накидал небольшой пример:
Все замечательно работает. Но хотелось бы подобное организовать с property node disabled. Но при соединении ошибка, ошибка в том, что слева boolean, а справа числовое. Можно как-нибудь рассматривать только два из трех состояний disabled и их выбирать в зависимости от true или false? Подскажите.
Додумал. Преобразователь boolean to (0,1) добавил. И с помощью дизъюнкции сделал с двумя строками ввода. В моем случае это будет фамилия и имя.
По поводу сравнения, накидал небольшой пример:
Все замечательно работает. Но хотелось бы подобное организовать с property node disabled. Но при соединении ошибка, ошибка в том, что слева boolean, а справа числовое. Можно как-нибудь рассматривать только два из трех состояний disabled и их выбирать в зависимости от true или false? Подскажите.
Додумал. Преобразователь boolean to (0,1) добавил. И с помощью дизъюнкции сделал с двумя строками ввода. В моем случае это будет фамилия и имя.
Re: Проблема с меню
Возник новый вопрос. Описываю ситуацию.
Запуск программы, там меню с кнопками соответствующими лабораторным работам. Студент выбрал нужную ему л.р. Приступил к выполнению. Выполнение поэтапное. Т.е. что-то посчитал - ввел в строки для ввода, занес в таблицу и т.д. -> перешел к следующему этапу.
Один из этапов - сборка электрической цепи. Например, собрал цепь, подключил вольтметр, тот показал какое-то значение и с этим значение на следующий этап. Средствами labview вроде как не так просто, и слышал про интеграцию с multisim (workbench), что было бы очень неплохо. Возможно ли, подобное взаимодействие в реальном времени? Подскажите, старожилы и знатоки. Заранее благодарю.
Запуск программы, там меню с кнопками соответствующими лабораторным работам. Студент выбрал нужную ему л.р. Приступил к выполнению. Выполнение поэтапное. Т.е. что-то посчитал - ввел в строки для ввода, занес в таблицу и т.д. -> перешел к следующему этапу.
Один из этапов - сборка электрической цепи. Например, собрал цепь, подключил вольтметр, тот показал какое-то значение и с этим значение на следующий этап. Средствами labview вроде как не так просто, и слышал про интеграцию с multisim (workbench), что было бы очень неплохо. Возможно ли, подобное взаимодействие в реальном времени? Подскажите, старожилы и знатоки. Заранее благодарю.
Re: Проблема с меню
dadreamer, да, я видел это. Если я правильно понимаю, то 1-й способ, из 4-х - тот, что мне нужен. Так?
Re: Проблема с меню
Всем доброго времени суток! Ситуация такая, имею кнопки этапов и два тестовых (т.к. еще только пробую) поля для ввода.
Изначальное состояние кнопок и полей видим на скриншоте.
Что требуется? Требуется, чтобы в режиме реального времени проверялось заполненность полей, если они оба заполнены - кнопка 2го этапа становится доступной. По нажатию на нее, поля для ввода становились невидимыми.
Вроде бы всё работает, но не так точно, как хотелось бы.
P.S. Код для кнопки 1го этапа делал для тестирования
Понимаю, что косяки идут от того, что явно не правильно соединил отдельные куски кода (по отдельности работают вроде как надо). Но не могу понять, как именно исправить.. Очень рассчитываю на Вашу помощь!
Проблему не решил, но локализовал: чтобы изменилось состояние кнопки этапа №2 - нужно нажимать кнопку первого этапа. А нужно, чтобы это проверялось без нажатия.
Изначальное состояние кнопок и полей видим на скриншоте.
Что требуется? Требуется, чтобы в режиме реального времени проверялось заполненность полей, если они оба заполнены - кнопка 2го этапа становится доступной. По нажатию на нее, поля для ввода становились невидимыми.
Вроде бы всё работает, но не так точно, как хотелось бы.
P.S. Код для кнопки 1го этапа делал для тестирования
Понимаю, что косяки идут от того, что явно не правильно соединил отдельные куски кода (по отдельности работают вроде как надо). Но не могу понять, как именно исправить.. Очень рассчитываю на Вашу помощь!
Проблему не решил, но локализовал: чтобы изменилось состояние кнопки этапа №2 - нужно нажимать кнопку первого этапа. А нужно, чтобы это проверялось без нажатия.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение