Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.09.2010, 02:48
iillyyaa вне форума Посмотреть профиль Отправить личное сообщение для iillyyaa Найти все сообщения от iillyyaa
  № 1  
Ответить с цитированием
iillyyaa

Регистрация: Apr 2010
Сообщений: 147
По умолчанию Как добавить бекграунд у контейнера ?

суть, имеем контейнер

Код AS3:
var cont_prim:Sprite = new Sprite();
в него складываем разные тексты

Код AS3:
cont_prim.addChild(to_cont_opisanie);
cont_prim.addChild(to_cont_opisanie2);
хочется сделать, что бы был у этого контейнера бекграунд, а не прозрачный контейнер с текстами.. можно как то указать спрайту cont_prim бекграунд ? ну и рамку заодно

или же делать банально, добавить прямоугольник в контейнер размерами 0х0, когда будут добавлены все тексты, определить размеры контейнера и растянуть в нём прямоугольник ?

Старый 26.09.2010, 11:06
f.g.programmer вне форума Посмотреть профиль Отправить личное сообщение для f.g.programmer Найти все сообщения от f.g.programmer
  № 2  
Ответить с цитированием
f.g.programmer
 
Аватар для f.g.programmer

блогер
Регистрация: Sep 2010
Адрес: Россия
Сообщений: 137
Записей в блоге: 3
А чем вам банальный способ не нравится? Можно врисовывать прямоугольник в cont_prim.graphics, и перерисовывать его при добавлении текстов.

Старый 26.09.2010, 14:08
iillyyaa вне форума Посмотреть профиль Отправить личное сообщение для iillyyaa Найти все сообщения от iillyyaa
  № 3  
Ответить с цитированием
iillyyaa

Регистрация: Apr 2010
Сообщений: 147
я думал может есть какой то способ проще.. сразу что бы появился фон у контейнера.. не надо было бы постоянно менять размеры

Старый 26.09.2010, 14:48
TanaTiX вне форума Посмотреть профиль Отправить личное сообщение для TanaTiX Найти все сообщения от TanaTiX
  № 4  
Ответить с цитированием
TanaTiX
 
Аватар для TanaTiX

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
Изначально размер контейнера равен 0 и таковым и останется, пока вы туда не добавите что-либо, например текстовое поле. Так придется переопределять бэк при изменении его содержимого.
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

Старый 26.09.2010, 14:50
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 5  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
А вы подпишите клип-фон на событие, и при появлении в нём чего нибудь пусть срабатывает функция масштабирования.
Код AS3:
fon.addEventListener(Event.ADDED,resizeIt)
function resizeIt(e:Event):void{
...
}

Старый 26.09.2010, 15:21
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 6  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Событие ADDED сработает один раз, когда контейнет (ну или фон, не важно) будет добавлен в дисплейлист родителя. Нужно переопределить addChild, removeChild и там уже вызывать перерисовку (если детишки не будут двигаться и менять размеры).

Старый 26.09.2010, 16:33
iillyyaa вне форума Посмотреть профиль Отправить личное сообщение для iillyyaa Найти все сообщения от iillyyaa
  № 7  
Ответить с цитированием
iillyyaa

Регистрация: Apr 2010
Сообщений: 147
не, у меня всё просто... в контейнере несколько текстовых полей, данные в текстовых полях меняются, меняется и сам размер контейнера.. я могу когда буду обновлять данные, в конце изменить и размер бекграунда...

я думал может можно к самому спрайту-контейнеру прилепить бекграунд
типа контейнер.бекграунд = фффффф;

Старый 26.09.2010, 16:39
TanaTiX вне форума Посмотреть профиль Отправить личное сообщение для TanaTiX Найти все сообщения от TanaTiX
  № 8  
Ответить с цитированием
TanaTiX
 
Аватар для TanaTiX

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
так не бывает.
а так поможет событие изменения содержимого текстового поля для автоматизации процесса
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

Старый 26.09.2010, 16:51
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 9  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Черт знает, что у вас там конкретно за задача, но вот: http://help.adobe.com/ru_RU/AS3LCR/F...ackgroundColor
__________________
тут я

Старый 26.09.2010, 17:03
iillyyaa вне форума Посмотреть профиль Отправить личное сообщение для iillyyaa Найти все сообщения от iillyyaa
  № 10  
Ответить с цитированием
iillyyaa

Регистрация: Apr 2010
Сообщений: 147
так, возник вопрос, что лучше добавить на бекграунд ?

Код AS3:
var to_cont_bg = new Sprite();
to_cont_bg.graphics.lineStyle(1, 0x0000FF);
to_cont_bg.graphics.beginFill(0xCCFFCC);
to_cont_bg.graphics.drawRect(0, 0, 1000, 1000);
to_cont_bg.x = 0;
to_cont_bg.y = 0;
cont_prim.addChild(to_cont_bg);
если делать размеры прямоугольника 10х10 а потом растягивать, то растягивается и рамка (тоесть её толщина)

единственное что придумал, это сделать прямоугольник 1000х1000, потом уменьшить до 10х10 и потом опять уже увеличить до размера контейнера

Код AS3:
to_cont_bg.width = 10;
to_cont_bg.height = 10;
to_cont_bg.width = cont_prim.width;
to_cont_bg.height = cont_prim.height;
Добавлено через 3 минуты
КорДум, не, бекграунд у текстового поля не то.. у меня несколько текстовых полей в контейнере, так же там будет графика чуть..

тоесть текст1 в координатах 0х0
текст2 в координатах 50х50
картинка в координатах 100х100
текст3 в координатах 120х200

и вот размер контейнера стал к примеру 250х350
все тексты без бекграундов, а нужен общий бекграунд у всего контейнера и рамку...

это будет всплывающая подсказка (да вот такая навороченная)

Создать новую тему Ответ Часовой пояс GMT +4, время: 23:17.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 23:17.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.