![]() |
Панель инструментов со скроллом
Вложений: 1
Разрабатываю программу-редактор диаграмм, на данный момент появилось большое число возможных символов, блоков и инструментов, которые на панель с кнопочками уже не запихаешь - элементов уже более 40.
Нужно срочно сделать что-то в духе панельки инструментов из визио: - необходимо чтобы можно было скроллить иконки инструментов - естественно их выбирать ( при нажатии на иконку переключать номер инструмента внутри программы ) макет желаемого прикрепил в виде рисунка ) Гуглил, но чего-то так ничего и не нашел путного. Подскажите пожалуйста, как это лучше реализовать, может есть какие-то готовые компоненты, которые помогут? |
А простой Sprite со scrollRect не подойдёт?
Там слушайте ROLL_OVER, и при этом событии слушайте мышиный скролл, и прокручивайте scrollRect куда захочется. И, соответственно, убирайте слушатель скролла при ROLL_OUT. |
Вложений: 1
Я всегда делаю так:
Все кнопки инструментов добавьте в конейнер(Sprite) и задайте ему маску(область которая будет видна). Напишите скроллбар или возьмите готовый и двигайте контейнер с кнопками, когда изменяется положение слайдера. P.S. Прочитал сообщение SuriTheAngel. Никогда не слышал про scrollRect, и делал без него. Но думаю, что с ним будет удобнее. |
Круто, спасибо). Но есть два вопроса:
1. Как сделать маску ? Можно пример кода небольшой, прям в общих чертах, я пойму. ) 2. И где можно найти готовый скроллбар ) P.S. Заранее спасибо огромное |
Маска обычный displayObject спрайт шарп итд.
1 У объекта задаем mask 2 Добавляем маску на холст (displaylist) Мне больше нравится scrollRect сним удобнее делать слайдеры и прочее вещи. |
Код AS3:
|
Большое спасибо, люди. ))
|
На самом деле правильнее создать достаточное количество айтем рендереров ( в данном случае, с какими-то данными, стоящими за ней. Надпись, реакция, рисунок).
А по движению скроллбара менять данные в каждой кнопке. При этом их можно как оставить на месте, так и передвигать вверх-вниз, переставляя уходящую из вида на место приходящей. Хотя, если элементов не слишком много (один экран), то заморачиваться, может быть, и не стоит. |
Классное предложение, ChuwY , подумаю, может и так сделаю )
|
ChuwY действительно предложил классное решение. Но, как кнопка узнает, что пора сменить данные, непонятно.
|
| Часовой пояс GMT +4, время: 16:17. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.