Запуск с предыдущими значениями в полях
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Запуск с предыдущими значениями в полях
Всем привет, пытаюсь задать полям в свойствах при перезапуске отображение предыдущих значений.
Сразу оговорюсь, что речь не идет о Make Current value default т.к. значения вводятся уже в запущенном режиме.
Возможно есть функция авто сохранения введенных значений с последующем их отображением при повторном запуске?
Сразу оговорюсь, что речь не идет о Make Current value default т.к. значения вводятся уже в запущенном режиме.
Возможно есть функция авто сохранения введенных значений с последующем их отображением при повторном запуске?
LabView 14,18
-
ladik
- developer
- Сообщения: 275
- Зарегистрирован: 18 ноя 2014, 11:45
- Награды: 1
- Версия LabVIEW: 2015, 2019
- Откуда: Екатеринбург
- Благодарил (а): 4 раза
- Поблагодарили: 3 раза
- Контактная информация:
Re: Запуск с предыдущими значениями в полях
Посмотрите по ссылкам ниже:
https://forums.ni.com/t5/LabVIEW/Make-c ... anguage=en
https://knowledge.ni.com/KnowledgeArtic ... AE&l=ru-BY
https://www.labviewmakerhub.com/forums/ ... f=11&t=571
https://forums.ni.com/t5/LabVIEW/Make-c ... anguage=en
https://knowledge.ni.com/KnowledgeArtic ... AE&l=ru-BY
https://www.labviewmakerhub.com/forums/ ... f=11&t=571
Дорогу осилит идущий.
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Запуск с предыдущими значениями в полях
Благодарю за ссылки, я их видал. Думал, возможно здесь у кого нибудь есть опыт программно обойти эту проблему простыми инструкциями, без необходимости в сторонних тулкитах. Примеры, которые там приведены больше подойдут для небольшого массива, но в моем случае массив около выводимых на переднюю панель 300 значений
Сейчас я такое количество сохраняю в текстовых файлах, но это не так чтоб удобно каждый раз при запуске, если данные большую часть работы с не меняются, обращаться к таким файлам.
Я хочу замутить так, и думаю это будут не так чтоб очень сложно на уровне такого чайника как я, чтоб был флажок, который по умолчанию при запуске запускал процедуру обращения к этому файлу, а в случае необходимости была бы возможность здесь же с кнопки выполнить обращение к другому файлу.
Я такую процедуру построил, но проблема в том, что на такой флажок нужно построить процедуру, которая бы выполнялась 1 раз при запуске.
Буду пробовать, это статистически вполне востребованная во многих проектах функция, но почему-то в она явно проигнорирована и нужно за них это допиливать.
Предлагаю всем желающим в условиях самоизоляции поупражняться в своем мастерстве.
Сейчас я такое количество сохраняю в текстовых файлах, но это не так чтоб удобно каждый раз при запуске, если данные большую часть работы с не меняются, обращаться к таким файлам.
Я хочу замутить так, и думаю это будут не так чтоб очень сложно на уровне такого чайника как я, чтоб был флажок, который по умолчанию при запуске запускал процедуру обращения к этому файлу, а в случае необходимости была бы возможность здесь же с кнопки выполнить обращение к другому файлу.
Я такую процедуру построил, но проблема в том, что на такой флажок нужно построить процедуру, которая бы выполнялась 1 раз при запуске.
Буду пробовать, это статистически вполне востребованная во многих проектах функция, но почему-то в она явно проигнорирована и нужно за них это допиливать.
Предлагаю всем желающим в условиях самоизоляции поупражняться в своем мастерстве.
LabView 14,18
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Запуск с предыдущими значениями в полях
Набросал вариант, с сохранением и считыванием в текстовый файл
- Вложения
-
- Saving.vi
- (34.68 КБ) 110 скачиваний
LabView 14,18
-
ladik
- developer
- Сообщения: 275
- Зарегистрирован: 18 ноя 2014, 11:45
- Награды: 1
- Версия LabVIEW: 2015, 2019
- Откуда: Екатеринбург
- Благодарил (а): 4 раза
- Поблагодарили: 3 раза
- Контактная информация:
Re: Запуск с предыдущими значениями в полях
Использование переменных в VI с большим количеством контролов будет затруднительно. На мой взгляд, более гибкий вариант для этой задачи -- использовать InvokeNode. Немного подправил Ваш пример.
- Вложения
-
- Saving.vi
- (37.78 КБ) 99 скачиваний
Дорогу осилит идущий.
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: Запуск с предыдущими значениями в полях
Select, Вы опять за свое - за изобретение велосипеда? Люди стараются, создают тулкиты, тратят свое личное (очень часто даже неоплачиваемое) время для того, чтобы именно вот в таких вот случаях кто-то другой мог взять, установить этот тулкит, и с его помощью решить свою задачу. Время - деньги, и если кто-то уже сделал решение которое работает, его нужно использовать. dadreamer сбросил отличную ссылку на OpenG тулкит. Одна виайка на запись, вторая - на чтение. Куда проще-то? Вы ведь пишете, цитирую:
"Я хочу замутить так, и думаю это будут не так чтоб очень сложно на уровне такого чайника как я, чтоб был флажок, который по умолчанию при запуске запускал процедуру обращения к этому файлу, а в случае необходимости была бы возможность здесь же с кнопки выполнить обращение к другому файлу."
Вам дают готовое решение, а Вы начинаете изобретать велосипед. Без обид, ничего личного - но зачем? А если хотите решить вопрос сами - то зачем здесь спрашивать?
"Я хочу замутить так, и думаю это будут не так чтоб очень сложно на уровне такого чайника как я, чтоб был флажок, который по умолчанию при запуске запускал процедуру обращения к этому файлу, а в случае необходимости была бы возможность здесь же с кнопки выполнить обращение к другому файлу."
Вам дают готовое решение, а Вы начинаете изобретать велосипед. Без обид, ничего личного - но зачем? А если хотите решить вопрос сами - то зачем здесь спрашивать?
Мы делили апельсин - много наших полегло...
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Запуск с предыдущими значениями в полях
ladik,
С нодами мне понравилось, но я их не очень хорошо знаю но непременно возьму на вооружение.
Ваш пример полезный, но проблему не решает, после перезапуска мне все же нужно вручную ссылаться на конфигурацию.
Придумал все же вариант с автоматическим вбросом ранее сохраненной конфигурации, что в принципе рулит.
Kosist,
Почему не люблю сторонние тулкиты, по мере обновлений некоторые модули так же меняются. Был очень гиморойный опыт когда по этой причине возник у клиента после апгреита баг, пришлось все там перелапачивать чтоб исправить ситуацию.
В.у. разработчик строит свои тулкиты на 2009, да и не такая это сложная оказалась задача, чтоб брать тулсы со стороны.
С нодами мне понравилось, но я их не очень хорошо знаю но непременно возьму на вооружение.
Ваш пример полезный, но проблему не решает, после перезапуска мне все же нужно вручную ссылаться на конфигурацию.
Придумал все же вариант с автоматическим вбросом ранее сохраненной конфигурации, что в принципе рулит.
Kosist,
Почему не люблю сторонние тулкиты, по мере обновлений некоторые модули так же меняются. Был очень гиморойный опыт когда по этой причине возник у клиента после апгреита баг, пришлось все там перелапачивать чтоб исправить ситуацию.
В.у. разработчик строит свои тулкиты на 2009, да и не такая это сложная оказалась задача, чтоб брать тулсы со стороны.
- Вложения
-
- Saving1.vi
- (34.97 КБ) 93 скачивания
LabView 14,18
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: Запуск с предыдущими значениями в полях
Select, серьезно? На опыте с одним тулкитом теперь отметать все остальные ? Это как в поговорке, "Обжегся на молоке, дует и на воду"...
Версия вообще ни при чем - какая разница, если работает? Вот Вы откройте исходники тулкита, посмотрите как это делают другие люди - найдете какие-то идеи, выучите новые вещи. Полезно ведь.
Я бы советовал Вам развиваться в сторону более правильных решений и подходов. Паттерны программирования ведь не дураки придумали. Вот эти Flat Sequence Structure ненужные заменяются стейт-машиной, обрабатывание кнопок в цикле вот так - сомнительный подход. Вы добавите еще один контрол - и читание/запись нужно обновлять на двух местах. Если первая кейс-структура будет в состянии False, то вторая не получит путь к файлу. И т.д., и т.п. А Вы спрашиваете советы, люди Вам пытаются помочь - но все равно делаете свое решение, далекое от правильного.
Вам ведь для решения ladikа достаточно один проводок переподключить - а Вы пишете что оно не подходит. Удалить кнопку Read, и вместо нее подключить кнопку Play... А ведь Ваш изначальный пример имел кнопку Read - так это значит что Вы неправильно вначале описываете задачу/даете неправильные входные данные; а потом говорите что предложенные решения не решают Вашу проблему .
Версия вообще ни при чем - какая разница, если работает? Вот Вы откройте исходники тулкита, посмотрите как это делают другие люди - найдете какие-то идеи, выучите новые вещи. Полезно ведь.
Я бы советовал Вам развиваться в сторону более правильных решений и подходов. Паттерны программирования ведь не дураки придумали. Вот эти Flat Sequence Structure ненужные заменяются стейт-машиной, обрабатывание кнопок в цикле вот так - сомнительный подход. Вы добавите еще один контрол - и читание/запись нужно обновлять на двух местах. Если первая кейс-структура будет в состянии False, то вторая не получит путь к файлу. И т.д., и т.п. А Вы спрашиваете советы, люди Вам пытаются помочь - но все равно делаете свое решение, далекое от правильного.
Вам ведь для решения ladikа достаточно один проводок переподключить - а Вы пишете что оно не подходит. Удалить кнопку Read, и вместо нее подключить кнопку Play... А ведь Ваш изначальный пример имел кнопку Read - так это значит что Вы неправильно вначале описываете задачу/даете неправильные входные данные; а потом говорите что предложенные решения не решают Вашу проблему .
Мы делили апельсин - много наших полегло...
-
IvanLis
- guru
- Сообщения: 5463
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 87 раз
Re: Запуск с предыдущими значениями в полях
А можно пару ссылок на Ваши проекты, очень интересно посмотреть их функционал и проработанность деталей?Select писал(а):Буду пробовать, это статистически вполне востребованная во многих проектах функция, но почему-то в она явно проигнорирована и нужно за них это допиливать.
Предлагаю всем желающим в условиях самоизоляции поупражняться в своем мастерстве.
А Вас не смущает, что пишите Вы DBL, а читаете I32, при этом игнорируя дробную часть. И как Вы будите выходить из ситуации, когда необходимо сохранить состояния элементов с типом String или Boolean, я не говорю уже о всеми любимых и используемых, массивах, кластерах, массивов кластеров содержащих массивыSelect писал(а):Придумал все же вариант с автоматическим вбросом ранее сохраненной конфигурации, что в принципе рулит.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Запуск с предыдущими значениями в полях
Kosist,
По поводу нечеткой формулировки ... изначальной задачи, никто ничего здесь не пытался уточнять, я решил что формулировка понятна. Собственно она по смыслу свою суть не меняет, если кто меня неверно истолковал, каюсь.
Еще раз, по рекомендуемым тулсам я несколько раз перечитывал авторские туториалы, по свободе покурю их, но меня смущает версия на которой они строились Далеко ходить не нужно. Откройте модуль Write To Spreadsheet File.vi от 14 в 18 и вы увидите ситуацию, есть и другие подобные грабли.
Относительно Вашего примера с Read Panel from INI и Write Panel to INI красиво и не громоздко, перезапись в config.ini по умолчанию текущего состояния всей панели в запущенном состоянии, стоит его объединить с методом ladikа
IvanLis,
DBL формат не смущает, если Вы по моим прошлым постам, там со стрингами все иначе.
По проектам, что конкретно интересует? У меня периодически возникают вопросы, мой стиль далек от хрестоматийного, опыт приходит по мере решения проблем. Многие вещи наследую от проекта к проекту. Если я здесь начну разворачивать все чем занимался или занимаюсь, я погрязну в судах, т.к. подписываюсь о неразглашении.
IvanLis,
20,000 10,000 10,000 20,000 10,000 20,000 10,000 20,000 1,000 1,000 1,000 1,000
Этот проводок додумал, не претендуя на чье-либо авторство, да и некоторые свойства пришлось подправлять по методу обращения к источнику....Удалить кнопку Read, и вместо нее подключить кнопку Play... А ведь Ваш изначальный пример имел кнопку Read - так это значит что Вы неправильно вначале описываете задачу/даете неправильные входные данные; а потом говорите что предложенные решения не решают Вашу проблему
По поводу нечеткой формулировки ... изначальной задачи, никто ничего здесь не пытался уточнять, я решил что формулировка понятна. Собственно она по смыслу свою суть не меняет, если кто меня неверно истолковал, каюсь.
Еще раз, по рекомендуемым тулсам я несколько раз перечитывал авторские туториалы, по свободе покурю их, но меня смущает версия на которой они строились Далеко ходить не нужно. Откройте модуль Write To Spreadsheet File.vi от 14 в 18 и вы увидите ситуацию, есть и другие подобные грабли.
Относительно Вашего примера с Read Panel from INI и Write Panel to INI красиво и не громоздко, перезапись в config.ini по умолчанию текущего состояния всей панели в запущенном состоянии, стоит его объединить с методом ladikа
IvanLis,
DBL формат не смущает, если Вы по моим прошлым постам, там со стрингами все иначе.
По проектам, что конкретно интересует? У меня периодически возникают вопросы, мой стиль далек от хрестоматийного, опыт приходит по мере решения проблем. Многие вещи наследую от проекта к проекту. Если я здесь начну разворачивать все чем занимался или занимаюсь, я погрязну в судах, т.к. подписываюсь о неразглашении.
IvanLis,
20,000 10,000 10,000 20,000 10,000 20,000 10,000 20,000 1,000 1,000 1,000 1,000
LabView 14,18
-
IvanLis
- guru
- Сообщения: 5463
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 87 раз
Re: Запуск с предыдущими значениями в полях
Я понимаю, что часть ПО показать нет возможности, но речь шла о паре ссылок, я думаю у каждого найдется один два проекта, не обремененные соглашениями. Тем более исходники и не требуются, достаточно видео и скринов, Вы же должны иметь некоторое портфолио для создания имиджа при контакте с потенциальными заказчиками.Select писал(а):Если я здесь начну разворачивать все чем занимался или занимаюсь, я погрязну в судах, т.к. подписываюсь о неразглашении.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Запуск с предыдущими значениями в полях
IvanLis,
Немного разгружусь выставлю что найду.
Немного разгружусь выставлю что найду.
LabView 14,18
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: Запуск с предыдущими значениями в полях
Как-то сразу я эту фразу пропустил...Select писал(а):Буду пробовать, это статистически вполне востребованная во многих проектах функция, но почему-то в она явно проигнорирована и нужно за них это допиливать.
предоставляет все средства для реализации требуемого функционала. Считать и записать данные с контролов можно; сделать запись в разные типы файлов - тоже. Ну а остальное - зависит от бизнес-логики. Как разработчики, по-вашему, должны предвидеть что именно Вам понадобится? Какие типы данных будете писать, в какой точке исполнения будете считывать данные, и сохранять? Так что ничего не проигнорированно - просто это уже бизнес-логика, и само по себе ее не должно содержать.
Мы делили апельсин - много наших полегло...
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Запуск с предыдущими значениями в полях
Kosist,
По части именно этой функции я не согласен, т.к. она присутствует во многих ядрах популярного софта и по усмотрению юзеров подключается в настройках.
ladik, очень шикарно, я в восторге и еще раз благодарю. Благодаря такому решению моя БД избавилась от квадратных метров кода, и в целом обрел универсальную вкуснятину.
Я все что нужно подправил, дизаблы перевел в енаблы, теперь я сохраняю не только переменные, но и все состояния контролов одним пинком, даже USB номера портов сохраняются, уж на что я никак не надеялся. Одним махом все вопросы отпали.
Вместе с тем я могу создавать дополнительные конфигурации в каждом конкретном случае.
По части именно этой функции я не согласен, т.к. она присутствует во многих ядрах популярного софта и по усмотрению юзеров подключается в настройках.
ladik, очень шикарно, я в восторге и еще раз благодарю. Благодаря такому решению моя БД избавилась от квадратных метров кода, и в целом обрел универсальную вкуснятину.
Я все что нужно подправил, дизаблы перевел в енаблы, теперь я сохраняю не только переменные, но и все состояния контролов одним пинком, даже USB номера портов сохраняются, уж на что я никак не надеялся. Одним махом все вопросы отпали.
Вместе с тем я могу создавать дополнительные конфигурации в каждом конкретном случае.
LabView 14,18
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение