Page 1 of 1

TypeDef для Combobox

PostPosted: 15 Nov 2018, 23:42
by Alfrol
Доброго времени суток! Возникла проблема TypeDef для Combobox не работает. Точнее, не обновляются его значения на диаграмме при изменении их в typeDef. Информации в интернете нашёл мало, это, как я понял, "особенность LV" и без решения, что странно. Я плохо себе представляю как без этого можно жить. Menu Ring не удобен для работы с case.

Re: TypeDef для Combobox

PostPosted: 16 Nov 2018, 00:23
by Kosist
Используйте тогда Enum - для селекторов, самое оно.

Re: TypeDef для Combobox

PostPosted: 16 Nov 2018, 00:51
by Alfrol
Kosist wrote:Используйте тогда Enum - для селекторов, самое оно.

В Enum, как и в Ring нельзя сделать "текст для ? в case", что очень неудобно. Если будет порядка 10 вариантов, запутаешься какое число чему соответствует. У ComboBox вместо чисел справа то же самое название, что удобно.

Re: TypeDef для Combobox

PostPosted: 16 Nov 2018, 01:10
by Kosist
Alfrol wrote:В Enum, как и в Ring нельзя сделать "текст для ? в case", что очень неудобно. Если будет порядка 10 вариантов, запутаешься какое число чему соответствует. У ComboBox вместо чисел справа то же самое название, что удобно.

Это неверно. Когда Вы подключаете Enum к селектору Case Structure, то увидите там не числа, а текст энумератора. Поэтому запоминать, какому числу соответствует какое название не нужно. В этом и особенность, и удобство использования Enum в качестве селектора.
В общем, пару особенностей Ring и Enum.
Ring хорош тем, что тексту можно присваивать произвольное числовое значение, в то время как для Enum текста это значение присваивается автоматически, согласно порядковому номеру.
Ring значения можно изменять во время исполнения кода, а в Enum дописать/убрать/изменить порядок значений во время выполнения нельзя; это можно делать только при помощи скриптинга.
Подключая Ring к селектору Case Structure, селектором будут числа; а для Enum - как я уже написал выше - текстовое значение энума.
По Combobox все проще, т.к. это по-сути лишь строковой тип данных, в который можно записать значения в виде списка во время выполнения виайки + можно вводить данные, таким образом "выбирая" значения (что нельзя делать для Ring); просто drop-down список...

Re: TypeDef для Combobox

PostPosted: 16 Nov 2018, 04:30
by taras_33
Если уж очень хочется, то можно поиграться со скриптингом.
А вообще полностью согласен с Kosist - Enum для case хороший выбор.

Re: TypeDef для Combobox

PostPosted: 16 Nov 2018, 11:15
by Artem.spb
strict type def успешно обновляет.
Вопрос, устроит ли вас невозможность менять размеры.

Ну до кучи присоединюсь к предыдущим ораторам. Enum позволяет ещё и контролировать, что никакие новшества не забыты.