Страница 1 из 1

Переключатель на три положения

Добавлено: 03 сен 2019, 22:43
jane_wild
Возникла необходимость в использовании ротационного переключателя на три положения. Раньше как то делала переключатель на два положения, ипользовала boolean и картинки из DSC модуля (см вложение). Теперь нужен аналогичниый на три. Можно использовать Slide или Dial, но начальство желает видеть переключатель напоминающий реальный. Может кто подскажет как Customize что бы dial хоть отдаленно напоминал реальный rotary switch на три положения ... Спасибо

PS. Думала скачаю картинку и сделаю Customize... Но не тут то было. Если заменить "черточку" на картинку в Dial, то картинка не вращается, а только перемещается по кругу, не меняя своего угла.

Re: Переключатель на три положения

Добавлено: 04 сен 2019, 10:16
Blackman
Попробуйте предлагаемый пример. Это picture ring c 4 картинками. Для значений 1 и 3 используется одна и та же картинка. На контроле располагаются большие прозрачные кнопки Increment/Decrement, которые должны быть видимыми.

Re: Переключатель на три положения

Добавлено: 04 сен 2019, 12:00
Vitekkz88
3 позиции можно вручную сделать. Для редактирования можете использовать GIMP.
Берём dial, помещаем на него кастомный индикатор типа лампочка с изображением тумблера. Раз-два-три - тумблер покрути.

Re: Переключатель на три положения

Добавлено: 04 сен 2019, 15:45
jane_wild
Vitekkz88, Спасибо, идея понятна, а можно попросить выложить картинки, которые повернуты на 45 градусов - две нижние на скриншоте (в представленном Вами VI только три верхних)

Re: Переключатель на три положения

Добавлено: 04 сен 2019, 15:49
jane_wild
Blackman, Спасибо, неплохое решение, думаю если картинки от Vitekkz88 вставить в picture ring (три из них) получиться красивше.

Re: Переключатель на три положения

Добавлено: 05 сен 2019, 05:44
Vitekkz88
...думаю если картинки от Vitekkz88 вставить в picture ring (три из них) получиться красивше.
Внесу ясность. Dial отрабатывает, когда зажата ЛКМ на идикаторе и происходит перемещение мышки. Зажали ЛКМ - куда крутим - туда тумблер и вращается. Picture ring в данной реализации отрабатывает как по однократному нажатию на индикатор, так и когда удерживается в нажатом состоянии ЛКМ. Зажали ЛКМ - состояние меняется до тех пор, пока не отожмёте кнопу мышки. Чтобы перейти из состояния 2 в состояние 1 - нужно кликнуть в другую область индикатора, нежели когда вы переходили из состояния 1 в состояние 2. Это эффект от наложения поверх индикатора прозрачных Increment/Decrement. ИМХО, это не юзер-френдли ниразу :nono:
Обновил выше программу, добавил картинки.

Re: Переключатель на три положения

Добавлено: 05 сен 2019, 23:32
taras_33
Jane, попробуй использовать XControl. Скажу сразу я не большой специалист в этой области, но вроде как работает.
Значения меняются не только при вращении, а при нажатиях на надписи Left, Right, Center - это я кнопки добавил...
Короче смотри вложение...

Re: Переключатель на три положения

Добавлено: 06 сен 2019, 05:28
Vitekkz88
Jane, попробуй использовать XControl. Скажу сразу я не большой специалист в этой области, но вроде как работает.
Jane, даже не пробуйте использовать XControl для этой простецкой задачи - ощутимого профита не получите, а вот в калошу сядете легко. taras_33 наглядно Вам это продемонстрировал, осквернив нормальное рабочее решение своими доработками :crazy: . Понажимайте те самые left - right, left - right - centr а потом покрутите тумблер мышкой. И потестируйте так пару тройку минут.

Re: Переключатель на три положения

Добавлено: 06 сен 2019, 09:53
Vasiliy Baev
Для извращенцев:
1. Отрисовать в графическом редакторе Dial.
2. Разбить его на три части (или больше).
3. Создать три (или больше) bollean cntr, используя графику из пункта 2 для обоих состояний (true/false).
4. Создать Radio button, добавить в него 3 положение.
5. Открыть Radio button в редакторе и заменить 3 boolean элемента на boolean cntr из п.3.
6. Выравниваем, сохраняем, закрываем...

Dial не должен иметь "ручки", как на изображениях выше, только стрелочка указывающая положение.

Re: Переключатель на три положения

Добавлено: 06 сен 2019, 10:34
Vitekkz88
Dial не должен иметь "ручки", как на изображениях выше, только стрелочка указывающая положение.
Ну так а зачем тогда стрелочка? Вон, берёте классический knob, там вместо стрелочки кружок только. А можно вообще убрать из первого сообщения вот это:
...Customize что бы dial хоть отдаленно напоминал реальный rotary switch на три положения ... и сделать 3 кнопки. Мол, я художник, я так вижу ага.

Re: Переключатель на три положения

Добавлено: 06 сен 2019, 20:10
zxc_pavel
Для извращенцев:
Скроллингом и нажатиями переключать можно