![]() |
|
||||||||||
|
|
|
|||||
|
Banned
Регистрация: Sep 2012
Сообщений: 91
|
Здравствуйте.
Kакие функции отвечают за прорисовку,ну самые основные с пояснениями пожалуйста? То есть например нарисовать несколько линий и сделать из них кнопку. Желательно с примером. Заранее спасибо. |
|
|||||
|
Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
|
Когда-то рисовал кнопки для плеера
![]() var margin:uint = 10; var buttonPlay:Sprite = new Sprite(); var buttonPause:Sprite = new Sprite(); var buttonStop:Sprite = new Sprite(); buttonPlay.graphics.lineStyle (1, 0x0000FF, 1, true); // выбираем стиль линии buttonPlay.graphics.beginFill(0x5E5EFF, .25); // выбираем стиль заливки buttonPlay.graphics.moveTo(-5,-7); // "ставим карандаш" в точку buttonPlay.graphics.lineTo(10,0); // рисуем линию в другую точку buttonPlay.graphics.lineTo(-5,7); buttonPlay.graphics.lineTo(-5,-7); buttonPlay.graphics.drawCircle (0, 0, 15); // рисуем круг buttonPlay.graphics.endFill(); buttonPlay.x = 50; buttonPlay.y = 50; this.addChild(buttonPlay); buttonPause.graphics.lineStyle (1, 0x0000FF, 1, true); buttonPause.graphics.beginFill(0x5E5EFF, .25); buttonPause.graphics.drawCircle (0, 0, 15); buttonPause.graphics.drawRect(-5, -7, 4, 14); // рисуем прямоугольник buttonPause.graphics.drawRect(1, -7, 4, 14); buttonPause.graphics.endFill(); buttonPause.x = buttonPlay.x + buttonPlay.width + margin; buttonPause.y = 50; this.addChild(buttonPause); buttonStop.graphics.lineStyle (1, 0x0000FF, 1, true); buttonStop.graphics.beginFill(0x5E5EFF, .25); buttonStop.graphics.drawCircle (0, 0, 15); buttonStop.graphics.drawRect( -7, -7, 14, 14); buttonStop.graphics.endFill(); buttonStop.x = buttonPause.x + buttonPause.width + margin; buttonStop.y = 50; this.addChild(buttonStop); buttonPlay.buttonMode = buttonPause.buttonMode = buttonStop.buttonMode = true;
__________________
Нормально делай — нормально будет! |
|
|||||
|
Да лучше
Однако, когда речь идёт о компонентах с изменяемым размером или с настройками цвета / стиля, то уже и не настолько лучше С одной стороны придумывать всякие scale9grid-примочки для картинок (это в простейшем случае, а в общем там и тайлинг и чё только может не потребоваться), потом эти картинки сшивать тем же кодом. А с другой - просто нарисовать кодом картинку нужного размера. Но в моей практике такого выбора нет: Что художник изобразил - то и вставляем. И обычно это растр (оно и к лучшему - рендерится быстрее вектора) Если приходится чего-то тянуть - лепим всякие 9-грид примочки для растра. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Характерный пример кстати — кнопки в верхнем правом углу окна (в windows).
В зависимости от назначения окна у него может быть разный сет этих кнопок. Поэтому у кнопки "закрыть", например, может быть скругление нижнего левого угла (когда она одна), а может не быть. По-моему, проще описать это кодом, чем фигачить два (4, если еще и ширина кнопки разная) сета картинок для 4 состояний. А как насчет градиента самого окошка?)))
__________________
Reality.getBounds(this); |
![]() |
![]() |
Часовой пояс GMT +4, время: 15:38. |
|
|
« Предыдущая тема | Следующая тема » |
|
|