Slider — различия между версиями
Sadovoy (обсуждение | вклад) (→Слайдер как ползунок для регулировки громкости) |
Apolozova (обсуждение | вклад) м (→1. Слайдер как ползунок для регулировки громкости) |
||
| (не показано 10 промежуточных версий 4 участников) | |||
| Строка 1: | Строка 1: | ||
| − | '''Slider''' — встроенный объект редактора, реализующий прокручивание списков, а так же даёт возможность создание различных ползунков для регулирования параметров ( к примеру регулятор громкости, музыки, яркости и т.д. ) | + | {{TOC right}} |
| + | '''Slider''' — встроенный [[Object|объект]] редактора, реализующий прокручивание списков, а так же даёт возможность создание различных ползунков для регулирования параметров ( к примеру регулятор громкости, музыки, яркости и т.д. ) | ||
| − | == | + | == Общие параметры == |
[[Файл:Slider.png|right]] | [[Файл:Slider.png|right]] | ||
| Строка 8: | Строка 9: | ||
*'''имя'''( ''name'' ) - Имя графического объекта в дереве проекта. Может быть произвольным. По умолчанию соответствует имени файла из базы ресурсов. | *'''имя'''( ''name'' ) - Имя графического объекта в дереве проекта. Может быть произвольным. По умолчанию соответствует имени файла из базы ресурсов. | ||
*'''синхронизация''' ( ''sync'' )- Применяется для синхронизации между лейаутами, если указан параметр ''нет'' то объект будет активен только на текущем лейауте | *'''синхронизация''' ( ''sync'' )- Применяется для синхронизации между лейаутами, если указан параметр ''нет'' то объект будет активен только на текущем лейауте | ||
| + | *'''z''' - Параметр порядка рисования объекта. Сначала рисуются объекты с большим z, затем, поверх них - с меньшим. | ||
| + | *'''память''' ( ''memo'' ) - Если 1, то при повторном открытии экрана объект не обновляет свои параметры (помнит текущие параметры, оставшиеся от предыдущего посещения экрана). | ||
| + | *'''[[прокликиваемая]]''' ( ''passClk'' ) - Если 1, то картинка прозрачна для клика мышкой (пропускает объектам под ней). Если 2, то картинка сама обрабатывает клик, но и пропускает его дальше" | ||
| + | == Основные параметры == | ||
| − | + | '''Группа - размер''' | |
[[Файл:object1.png|400px|right]] | [[Файл:object1.png|400px|right]] | ||
| − | + | *'''W''' ( ''w'' ) - Ширина графического объекта в пикселях | |
| − | + | *'''H''' ( ''h'' )- Высота графического объекта в пикселях | |
| + | |||
| + | |||
| + | '''Группа - модификаторы''' | ||
| + | *'''alpha''' ( ''al'' ) - Прозрачность: от 0 (прозрачен) до 1 (не прозрачен). | ||
| + | *'''blending''' ( ''bl'' ) - Alpha смешивание (parent - наследует alpha от родителя, blend - смешивание, add - добавление, sub - вычитание, none - ничего не происходит. (Подробнее о Alpha смешивании - здесь)). | ||
| + | *'''angle''' ( ''ang'' ) - Угол поворота в градусах (0 - не повёрнут). Отсчитывается от оси x вниз. Вверх - идут отрицательные углы. | ||
| + | *'''scale x''' ( ''sx'' ) - Масштаб по оси '''x''' (1 - не изменен, 1.5 - увеличен в полтора раза, и т.д.). | ||
| + | *'''scale y''' ( ''sy'' )- Масштаб по оси '''y''' (1 - не изменен, 1.5 - увеличен в полтора раза, и т.д.). | ||
| − | + | ''' Группа - размер ползунка ''': | |
| − | + | *'''W''' ( ''handle_width'' ) - Ширина ползунка в пикселях. | |
| − | + | *'''H''' ( ''handle_height'' )- Высота ползунка в пикселях. | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| + | '''Группа - дополнительные''' | ||
*'''значение''' ( ''value'' ) - Текущее значение ползунка слайдера. | *'''значение''' ( ''value'' ) - Текущее значение ползунка слайдера. | ||
*'''шаг смещения''' ( ''shift_value'' ) - Смещение ползунка слайдера при установке состояния increase или decrease. | *'''шаг смещения''' ( ''shift_value'' ) - Смещение ползунка слайдера при установке состояния increase или decrease. | ||
| Строка 35: | Строка 43: | ||
::'''1''' - значение увеличивается влево или вверх. | ::'''1''' - значение увеличивается влево или вверх. | ||
*'''ползунок''' ( ''handle_res'' ) - Ресурс, за который пользователь будет тянуть. | *'''ползунок''' ( ''handle_res'' ) - Ресурс, за который пользователь будет тянуть. | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
*'''полоса''' ( ''groove_res'' ) - Ресурс, который будет тайлиться для заполнения полосы прокрутки. | *'''полоса''' ( ''groove_res'' ) - Ресурс, который будет тайлиться для заполнения полосы прокрутки. | ||
*'''начальная грань''' ( ''groove_begin_res'' ) - Ресурс, картинка левой или верхней грани полосы прокрутки. | *'''начальная грань''' ( ''groove_begin_res'' ) - Ресурс, картинка левой или верхней грани полосы прокрутки. | ||
| Строка 74: | Строка 75: | ||
::'''объект''' ('' obj '') - этот объект меняет свой параметр; | ::'''объект''' ('' obj '') - этот объект меняет свой параметр; | ||
::'''состояние''' ('' st '') - Новое состояние для объекта из предыдущего поля. | ::'''состояние''' ('' st '') - Новое состояние для объекта из предыдущего поля. | ||
| + | |||
| + | == Состояния == | ||
| + | |||
| + | *'''increase''' - увеличить текущее значение слайдера на значение указанное в поле '''шаг смещения'''. | ||
| + | *'''decrease''' - уменьшить текущее значение слайдера на значение указанное в поле '''шаг смещения'''. | ||
| + | |||
| + | == Примечания == | ||
| + | |||
| + | 1) Если слайдеру следующие поля не задать, то приложение зависнет: | ||
| + | ::*'''ползунок'''; | ||
| + | ::*'''полоса'''; | ||
| + | ::*'''начальная грань'''; | ||
| + | ::*'''конечная грань'''.<br> | ||
| + | 2) Если объекту слайдер не задавать объект слежения ( целевой объект ), то в поле значение ( ''value'' ) будет находиться число от 0.00 до 1.00 в зависимости от положения ползунка. Это значение считываем как строку, иначе получим или 0 или 1.<br> | ||
== Примеры реализации == | == Примеры реализации == | ||
| − | |||
| − | В проекте имеем два объекта sounds ( ''slider'' ) и save_sounds ( ''mashine'' ). Слайдер реализует прокрутку, а машина при изменении значения слайдера переводит машину в состояние save ( записываем значение слайдера в опции ). | + | ==='''1. Слайдер как ползунок для регулировки громкости'''=== |
| + | |||
| + | :В проекте имеем два объекта sounds ( ''slider'' ) и save_sounds ( ''mashine'' ). | ||
| + | |||
| + | [[Файл:Slider Tree.png|centre]] | ||
| + | |||
| + | :Слайдер реализует прокрутку, а машина при изменении значения слайдера переводит машину в состояние save ( записываем значение слайдера в опции ). | ||
| + | |||
| + | :Настройки объекта slider:<br> | ||
| + | [[Файл:Slider in option.png|centre]] | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | :Машина ''save_sounds'':<br> | |
| − | + | [[Файл:Mashine for slider in option.png|centre]] | |
| − | + | Состояния:<br> | |
| + | ::'''init''': выставляем текущее значение громкости звука объекту slider. (Почему в ините? Так как данная машина ребёнок слайдера, то проинитится машинка сразу после слайдера). | ||
| + | ::'''save''': считываем значение slider и записываем в опции. | ||
| − | + | ==='''2. Слайдер как скролл для прокрутки таблицы'''=== | |
| − | |||
| − | |||
| − | |||
| − | + | :Чтобы нашим слайдером прокручивать таблицу, мы должны указать в поле '''Целевой объект''' нужную таблицу. Выбор плоскости для прокручивания ( вертикально или горизонтально), выбирается исходя из ориентации слайдера (параметр '''вертикальный'''): | |
| + | |||
| + | [[Файл:Slider table.png|centre]] | ||
| − | + | [[Category:Main objects]] | |
| − | |||
Текущая версия на 14:00, 19 августа 2019
Slider — встроенный объект редактора, реализующий прокручивание списков, а так же даёт возможность создание различных ползунков для регулирования параметров ( к примеру регулятор громкости, музыки, яркости и т.д. )
Общие параметры
- id-объекта( id ) - уникальный номер объекта
- тип ( type ) - Выбранный тип объекта определяет его функциональное назначение и его свойства
- имя( name ) - Имя графического объекта в дереве проекта. Может быть произвольным. По умолчанию соответствует имени файла из базы ресурсов.
- синхронизация ( sync )- Применяется для синхронизации между лейаутами, если указан параметр нет то объект будет активен только на текущем лейауте
- z - Параметр порядка рисования объекта. Сначала рисуются объекты с большим z, затем, поверх них - с меньшим.
- память ( memo ) - Если 1, то при повторном открытии экрана объект не обновляет свои параметры (помнит текущие параметры, оставшиеся от предыдущего посещения экрана).
- прокликиваемая ( passClk ) - Если 1, то картинка прозрачна для клика мышкой (пропускает объектам под ней). Если 2, то картинка сама обрабатывает клик, но и пропускает его дальше"
Основные параметры
Группа - размер
- W ( w ) - Ширина графического объекта в пикселях
- H ( h )- Высота графического объекта в пикселях
Группа - модификаторы
- alpha ( al ) - Прозрачность: от 0 (прозрачен) до 1 (не прозрачен).
- blending ( bl ) - Alpha смешивание (parent - наследует alpha от родителя, blend - смешивание, add - добавление, sub - вычитание, none - ничего не происходит. (Подробнее о Alpha смешивании - здесь)).
- angle ( ang ) - Угол поворота в градусах (0 - не повёрнут). Отсчитывается от оси x вниз. Вверх - идут отрицательные углы.
- scale x ( sx ) - Масштаб по оси x (1 - не изменен, 1.5 - увеличен в полтора раза, и т.д.).
- scale y ( sy )- Масштаб по оси y (1 - не изменен, 1.5 - увеличен в полтора раза, и т.д.).
Группа - размер ползунка :
- W ( handle_width ) - Ширина ползунка в пикселях.
- H ( handle_height )- Высота ползунка в пикселях.
Группа - дополнительные
- значение ( value ) - Текущее значение ползунка слайдера.
- шаг смещения ( shift_value ) - Смещение ползунка слайдера при установке состояния increase или decrease.
- вертикальный ( vertical ):
- 0 - горизонтальное размещение;
- 1 - вертикальное размещение слайдера.
- обратный ( reversed ):
- 0 - значение увеличивается вниз или вверх;
- 1 - значение увеличивается влево или вверх.
- ползунок ( handle_res ) - Ресурс, за который пользователь будет тянуть.
- полоса ( groove_res ) - Ресурс, который будет тайлиться для заполнения полосы прокрутки.
- начальная грань ( groove_begin_res ) - Ресурс, картинка левой или верхней грани полосы прокрутки.
- конечная грань ( groove_end_res ) - Ресурс, картинка правой или нижней грани полосы прокрутки.
- отступ ( groove_margin ) - Отступ от сторон полосы, в который ползунок упрётся центром, при достижении максимального значения.
- целевой объект ( target_object ) - Объект, который будет слушать изменения значения слайдера. Объект должен содержать реакцию на SAY_SCROLL.
Добавляемые параметры
изменилось значение: изменить параметры объекта ( value_changed_param ) - После изменения значения слайдера изменить параметр объекта:
- объект ( obj ) - этот объект меняет свой параметр;
- свойство ( par ) - Параметр, который мы изменяем;
- значение ( val ) - Новое значение параметра.
изменилось значение: изменить состояние объекта ( value_changed_state ) - После изменения значения слайдера перевести объект в новое состояние:
- объект ( obj ) - этот объект меняет свой параметр;
- состояние ( st ) - Новое состояние для объекта из предыдущего поля.
достигнут минимум: изменить состояние объекта ( min_reached_state ):
- объект ( obj ) - этот объект меняет свой параметр;
- состояние ( st ) - Новое состояние для объекта из предыдущего поля.
достигнут максимум: изменить состояние объекта ( max_reached_state ):
- объект ( obj ) - этот объект меняет свой параметр;
- состояние ( st ) - Новое состояние для объекта из предыдущего поля.
покинут минимум: изменить состояние объекта ( min_left_state ):
- объект ( obj ) - этот объект меняет свой параметр;
- состояние ( st ) - Новое состояние для объекта из предыдущего поля.
покинут максимум: изменить состояние объекта ( max_left_state ):
- объект ( obj ) - этот объект меняет свой параметр;
- состояние ( st ) - Новое состояние для объекта из предыдущего поля.
Состояния
- increase - увеличить текущее значение слайдера на значение указанное в поле шаг смещения.
- decrease - уменьшить текущее значение слайдера на значение указанное в поле шаг смещения.
Примечания
1) Если слайдеру следующие поля не задать, то приложение зависнет:
- ползунок;
- полоса;
- начальная грань;
- конечная грань.
2) Если объекту слайдер не задавать объект слежения ( целевой объект ), то в поле значение ( value ) будет находиться число от 0.00 до 1.00 в зависимости от положения ползунка. Это значение считываем как строку, иначе получим или 0 или 1.
Примеры реализации
1. Слайдер как ползунок для регулировки громкости
- В проекте имеем два объекта sounds ( slider ) и save_sounds ( mashine ).
- Слайдер реализует прокрутку, а машина при изменении значения слайдера переводит машину в состояние save ( записываем значение слайдера в опции ).
- Настройки объекта slider:
- Машина save_sounds:
Состояния:
- init: выставляем текущее значение громкости звука объекту slider. (Почему в ините? Так как данная машина ребёнок слайдера, то проинитится машинка сразу после слайдера).
- save: считываем значение slider и записываем в опции.
2. Слайдер как скролл для прокрутки таблицы
- Чтобы нашим слайдером прокручивать таблицу, мы должны указать в поле Целевой объект нужную таблицу. Выбор плоскости для прокручивания ( вертикально или горизонтально), выбирается исходя из ориентации слайдера (параметр вертикальный):



