Проблема с меню

Простейшие вопросы в области инженерной разработки
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Проблема с меню

Сообщение dadreamer »

 
Вложения
Untitled 1.vi
lv2012
(7.06 КБ) 153 скачивания
nactyx
beginner
beginner
Сообщения: 47
Зарегистрирован: 13 ноя 2013, 21:03
Версия LabVIEW: 12

Re: Проблема с меню

Сообщение nactyx »

Такой вопрос: в каком месте определять "стартовые" значения всех visible и enabled? А то у меня получается так, что в каком состоянии закончил работу с vi - в том состоянии и при последующем запуске остались все элементы.

И еще, по поводу таблицы. Если с первыми "Тестовый текст1" и "Тестовый текст2" поставить для index row 0 - то они заносится.
Идем дальше. Делаю полностью идентичный код. Создаю "Тестовый текст3" и "Тестовый текст4" - там поставил index row 1 (чтобы заносилось в следующую строку) - ничего не заносится, а только стираются предыдущие значения.

Так же наткнулся на invoke node update cell - может лучше им воспользоваться?


--------------

dadreamer, изучаю Ваш VI.
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Проблема с меню

Сообщение dadreamer »

nactyx писал(а):Такой вопрос: в каком месте определять "стартовые" значения всех visible и enabled? А то у меня получается так, что в каком состоянии закончил работу с vi - в том состоянии и при последующем запуске остались все элементы.
Можно в самом начале программы сделать это, взять один кадр структуры Sequence, и там разместить установку свойств всех контролов/индикаторов. Соединить этот кадр с циклом, например, через Error In/Out. И на выходе из цикла тоже отдельный кадр, устанавливающий все контролы/индикаторы в первоначальное состояние.
nactyx писал(а):Так же наткнулся на invoke node update cell - может лучше им воспользоваться?
Не трогайте этот метод, он для другого. :wink:
nactyx
beginner
beginner
Сообщения: 47
Зарегистрирован: 13 ноя 2013, 21:03
Версия LabVIEW: 12

Re: Проблема с меню

Сообщение nactyx »

Можно ли внутри программы сделать кнопку, по нажатию на которую открывался бы определенный файл multisim в самом multisim?
Аватара пользователя
Viktor

Activity Professionalism Tutorials Black
expert
expert
Сообщения: 1408
Зарегистрирован: 23 мар 2008, 10:56
Награды: 4
Версия LabVIEW: 2020
Откуда: Санкт-Петербург
Благодарил (а): 17 раз
Поблагодарили: 3 раза
Контактная информация:

Re: Проблема с меню

Сообщение Viktor »

nactyx писал(а):Можно ли внутри программы сделать кнопку, по нажатию на которую открывался бы определенный файл multisim в самом multisim?
System Exec.PNG
System Exec.PNG (8.94 КБ) 7069 просмотров
nactyx
beginner
beginner
Сообщения: 47
Зарегистрирован: 13 ноя 2013, 21:03
Версия LabVIEW: 12

Re: Проблема с меню

Сообщение nactyx »

Viktor, спасибо!
nactyx
beginner
beginner
Сообщения: 47
Зарегистрирован: 13 ноя 2013, 21:03
Версия LabVIEW: 12

Re: Проблема с меню

Сообщение nactyx »

dadreamer писал(а):Можно в самом начале программы сделать это, взять один кадр структуры Sequence, и там разместить установку свойств всех контролов/индикаторов. Соединить этот кадр с циклом, например, через Error In/Out. И на выходе из цикла тоже отдельный кадр, устанавливающий все контролы/индикаторы в первоначальное состояние.
И справа тоже самое. Правильно ведь? Вроде даже работает :) А вот справа не догоняю, как надо через Error In/Out подсоединять...
Изображение

А по поводу добавления сделал так:
Изображение
Проблема вот в чем: при каждом запуске - по нажатию на кнопку информация из полей ввода добавляется в table control не с первой строки, а всё ниже и ниже. Т.е. видимо какая-то переменная не сбрасывается... Подскажите, пожалуйста!
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Проблема с меню

Сообщение dadreamer »

nactyx писал(а):А вот справа не догоняю, как надо через Error In/Out подсоединять...
Ну, вот как-то так...
26-05-2014 16-25-57.jpg
26-05-2014 16-25-57.jpg (32.26 КБ) 7001 просмотр
Хотя, можно было бы и State Machine использовать, но это самое простое решение.
nactyx писал(а):Проблема вот в чем: при каждом запуске - по нажатию на кнопку информация из полей ввода добавляется в table control не с первой строки, а всё ниже и ниже. Т.е. видимо какая-то переменная не сбрасывается... Подскажите, пожалуйста!
Задайте вход index (row) у :vi: Insert Into Array равным 0, новая строка будет вставляться сверху.
nactyx
beginner
beginner
Сообщения: 47
Зарегистрирован: 13 ноя 2013, 21:03
Версия LabVIEW: 12

Re: Проблема с меню

Сообщение nactyx »

А можно по нажатию на кнопку открыть небольшое изображение, в каком-нибудь всплывающем окне а-ля Show Message Delphi?
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Проблема с меню

Сообщение dadreamer »

Что-то я не припоминаю в Delphi встроенных функций для отображения сообщения с картинкой. Или вы такое имели в виду? Это стандартный функционал Windows. И это всё относится так же к :labview: в полной мере. Если нужна собственная картинка, то лучше создать отдельный :vi: , на ФП у которого будет размещена картинка, и этот :vi: показывать при необходимости.
nactyx
beginner
beginner
Сообщения: 47
Зарегистрирован: 13 ноя 2013, 21:03
Версия LabVIEW: 12

Re: Проблема с меню

Сообщение nactyx »

Вернемся к таблице. Можно ли реализовать подобную таблицу-заготовку для дальнейшего заполнения?
Изображение
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Проблема с меню

Сообщение dadreamer »

nactyx, многоуровневые заголовки во встроенной таблице LabVIEW создать нельзя. Максимум одна строка на горизонтальные заголовки и один столбец - на вертикальные. Если очень хочется, то можно внедрить ActiveX таблицу из Excel или найти какие-то сторонние компоненты.
nactyx
beginner
beginner
Сообщения: 47
Зарегистрирован: 13 ноя 2013, 21:03
Версия LabVIEW: 12

Re: Проблема с меню

Сообщение nactyx »

dadreamer, в таком случае упрощу и разделю на две таблицы, например.
Такой вопрос: как можно программно стереть всё, что есть в string control?

И как отследить, что в таблице table control заполнены все ячейки?
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Проблема с меню

Сообщение dadreamer »

nactyx писал(а):как можно программно стереть всё, что есть в string control?
И как отследить, что в таблице table control заполнены все ячейки?
1. загнать на вход пустую строку (константу);
2. она скорее всего бесконечная, на сколько хватит оперативной памяти; можно анализировать размер 2D массива из этой таблицы.
nactyx
beginner
beginner
Сообщения: 47
Зарегистрирован: 13 ноя 2013, 21:03
Версия LabVIEW: 12

Re: Проблема с меню

Сообщение nactyx »

dadreamer, а отследить количество нажатий на клавишу возможно? Т.е. мне нужно, чтобы из нескольких полей ввода определенное количество раз были занесены данные в таблицу.

И если в случае с контролами разобрался как их очищать предварительно при каждом запуске, теперь вопрос тот же, но применительно к table control - как программно очистить все заполенные ячейки?

И вопрос касательно event structure: мы создаем события, так называемые event case. И есть там кнопочка - edit events handled by this case. Откроется новое окно, и слева табличка: event specifiers. Там можно добавлять и удалять event'ы. Так и не понял, на что это влияет. Объясните?
Т.е. в моем случае, пример: есть event case "Внести в таблицу": Value Change, где по нажатию на одноименную кнопку данные добавляются в таблицу. Если сюда добавить events для всех строк ввода из которых осуществляется добавление в таблицу, т.е. название event case изменится на что-то в духе: Внести в таблицу Value Change, Поле ввода 1 Value Change и т.д. Попробовал и так, и наоборот - разницы не заметил. Но ведь в чем-то она имеется. Хотелось бы разобраться.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Для чайников»