Page 2 of 4

Re: Создание и работа с МЕНЮ

PostPosted: 08 Jan 2017, 22:45
by LEO_NIK
Blackman wrote:После создания и задания значений массива на FP - выделить его Левой Кнопкой Мышки -> выбрать пункт меню: Edit -> Make Selected Values Default.

Спасибо, проверю.
Добавляю через минуту. Уже проверил на вложенном в вопрос простом примере. Работает! Класс! Теперь проверю на проектируемом приборе.
Ещё через пару минут. И на приборе РАБОТАЕТ! СПАСИБО! А где почитать про эти тонкости подробнее?

Re: Создание и работа с МЕНЮ

PostPosted: 08 Jan 2017, 23:22
by Kosist
LEO_NIK wrote:А где почитать про эти тонкости подробнее?

Мне кажется, что все такие тонкости может даже в одном источнике и не собраны (ну кроме LabVIEW Help), но нужно знать, что искать. Так и в этом случае. Если бы Вы знали, что Вам достаточно присвоить контролу дефолтные значения, поиск по "labview control set default value" сразу бы выдал Вам результаты.
Посмотрите справку LabVIEW Help -> Fundamentals, там есть много чего.
И самый верный способ - проклацайте каждый пункт меню самого :labview: - что там есть, зачем. В справке найдете, что делают эти опции/функции.
Закиньте на лицевую панель разные контролы, щелкните правой кнопкой мышки - и посмотрите, какие опции там есть. Плюс к этому, проклацайте их свойства.

Re: Создание и работа с МЕНЮ

PostPosted: 08 Jan 2017, 23:37
by LEO_NIK
Kosist wrote:И самый верный способ - проклацайте каждый пункт меню самого :labview: - что там есть, зачем. В справке найдете, что делают эти опции/функции. Закиньте на лицевую панель разные контролы, щелкните правой кнопкой мышки - и посмотрите, какие опции там есть. Плюс к этому, проклацайте их свойства.

Это, пожалуй, наиболее подходит. Но тут вопрос времени ... Пока же, в основном, учусь на своих ошибках. Спасибо за ответ.

Re: Создание и работа с МЕНЮ

PostPosted: 09 Jan 2017, 08:43
by LEO_NIK
Blackman wrote:После создания и задания значений массива на FP - выделить его Левой Кнопкой Мышки -> выбрать пункт меню: Edit -> Make Selected Values Default.

Этим я пользуюсь на стадии проектирования. Ещё раз благодарю за подсказку. А можно ли эту же операцию выполнить программно, когда будет работать ВП и в массив будут динамически вноситься другие данные или корректироваться имеющиеся? Кстати, сейчас пока массив один, но в ВП их будет несколько. А другие массивы тоже можно таким же образом сохранять и при разработке программы, и в ходе работы ВП?

Re: Создание и работа с МЕНЮ

PostPosted: 09 Jan 2017, 10:02
by Artem.spb
LEO_NIK wrote:Этим я пользуюсь на стадии проектирования. Ещё раз благодарю за подсказку. А можно ли эту же операцию выполнить программно, когда будет работать ВП и в массив будут динамически вноситься другие данные или корректироваться имеющиеся? Кстати, сейчас пока массив один, но в ВП их будет несколько. А другие массивы тоже можно таким же образом сохранять и при разработке программы, и в ходе работы ВП?

Можно поизвращаться с этим методом
но это не работает, когда vi исполняется.
Проще сохранять данные в файл и при запуске читать их оттуда.

Re: Создание и работа с МЕНЮ

PostPosted: 09 Jan 2017, 10:39
by LEO_NIK
Artem.spb wrote:Проще сохранять данные в файл и при запуске читать их оттуда.

Понял, спасибо.

Re: Создание и работа с МЕНЮ

PostPosted: 09 Jan 2017, 13:00
by dadreamer
Artem.spb wrote:
LEO_NIK wrote:Этим я пользуюсь на стадии проектирования. Ещё раз благодарю за подсказку. А можно ли эту же операцию выполнить программно, когда будет работать ВП и в массив будут динамически вноситься другие данные или корректироваться имеющиеся? Кстати, сейчас пока массив один, но в ВП их будет несколько. А другие массивы тоже можно таким же образом сохранять и при разработке программы, и в ходе работы ВП?

Можно поизвращаться с этим методом

Тут даже пример есть: viewtopic.php?p=69298#p69298

Re: Создание и работа с МЕНЮ

PostPosted: 09 Jan 2017, 13:55
by LEO_NIK
dadreamer wrote: Тут даже пример есть: http://www.labviewportal.ru/viewtopic.p ... 298#p69298

Спасибо, скачал. Пока не разбирался.

Re: Создание и работа с МЕНЮ

PostPosted: 10 Jan 2017, 19:42
by LEO_NIK
Здравствуйте! Появился очередной вопрос. В программе есть listbox-ы с разным количеством строк. Как программно определять количество строк listbox? Другими словами, мне нужен номер последней строки. Перебирал узел свойств listbox, функции String, не нашел. По форуму вставлял ключевые слова: listbox, номер последней строки, количество строк, размер, но ...

Re: Создание и работа с МЕНЮ

PostPosted: 10 Jan 2017, 19:45
by dadreamer
LEO_NIK, размер массива Item Names.

Re: Создание и работа с МЕНЮ

PostPosted: 10 Jan 2017, 19:46
by Artem.spb
А откуда эти строки там взялись? :)
свойство item names -> array size

Re: Создание и работа с МЕНЮ

PostPosted: 10 Jan 2017, 20:30
by LEO_NIK
Спасибо за ответы. Мне нужно получить число строк (цифра) в listbox. Прикладываю пример на мой вопрос, я ожидаю, что появится число 5 (или 6, не знаю, войдёт ли первая строка). Но видна ошибка на блок-диаграмме. Что делаю не так?

Re: Создание и работа с МЕНЮ

PostPosted: 10 Jan 2017, 20:35
by dadreamer
 

Re: Создание и работа с МЕНЮ

PostPosted: 10 Jan 2017, 20:40
by LEO_NIK
dadreamer wrote: 

Понял, отлично, то, что надо! Спасибо.

Re: Создание и работа с МЕНЮ

PostPosted: 11 Jan 2017, 00:40
by LEO_NIK
В соответствии с этой темой моих вопросов создаю многоуровневое меню(=listbox-ы): по 3...5 пунктов на каждом уровне, а всего штук 10 уровней. Каждый пункт МЕНЮ имеет уникальный цифровой номер в соответствии с позицией в структуре МЕНЮ. По мере усложнения программы стало сложно в явном виде вызывать конкретный listbox. Возможно ли программно, по уникальному номеру вызывать нужный listbox и назначать ему определённое свойство (Visible, менять активную ячейку, менять содержание ячейки ...)? Пробовал идентифицировать по Label, Class ID, но он оказывается один у нескольких ячеек. Хочу сравнить, что проще: этот вариант, без МАССИВА, или через МАССИВ.
Немного конкретизирую. На этом вложении показал Case, где в явном виде указано, что listbox с Label "31" надо сделать видимым. 31 - это третий пункт меню 1-го уровня и 1-й пункт 2-го уровня. Это же число 31 имеется после схемы подсчёта количества нажатий на кнопки OK, UP, Down при работе с МЕНЮ (см. ВЛОЖЕНИЕ на 1-й стр.). Я хочу избавиться от явного указания Label "31", а укажу лишь listbox, а по селектору Case программа сама определит, какой Listbox сделать видимым. Можно так сделать?