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

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

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

Регистрация: Jun 2009
Сообщений: 64
Checked Изменение размера окна в зависимости от высоты текста

Подскажите, плз - есть окно (MovieClip _info_panel) с рамкой (MovieClip mcFrm), в нем текст (txtText). Хочется менять высоту окна в зависимости от высоты текста.
Пишу:
Код AS3:
_info_panel.mcFrm.scale9Grid = new Rectangle(11, 11, 315, 200);
_info_panel.mcFrm.height = _info_panel.txtText.textHeight + 85;
но flash cs4 ругается:
Цитата:
ArgumentError: Error #2004: Один из параметров указан неверно.
at flash.display:isplayObject/set scale9Grid()
at main::Main/myFunction()
если делать
Код AS3:
_info_panel.scale9Grid = new Rectangle(11, 11, 315, 200);
_info_panel.height = _info_panel.txtText.textHeight + 85;
то работает, но не так, как надо - размер текстового поля тоже изменяется, а мне нужно чтобы лишь рамка под текст подстраивалась.
Где моя ошибка?

Старый 30.09.2009, 01:54
Neirol вне форума Посмотреть профиль Отправить личное сообщение для Neirol Посетить домашнюю страницу Neirol Найти все сообщения от Neirol
  № 2  
Ответить с цитированием
Neirol
 
Аватар для Neirol

Регистрация: Sep 2009
Адрес: X = 10, Y = 420, Z = -35
Сообщений: 52
Отправить сообщение для Neirol с помощью ICQ Отправить сообщение для Neirol с помощью Skype™
Код AS3:
_info_panel.scaleX = _info_panel.txtText.scaleX;
_info_panel.scaleY = _info_panel.txtText.scaleY;
И нефиг париться
__________________
Рожденный ползать, везде пролезет...

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

Регистрация: Feb 2008
Адрес: Череповец
Сообщений: 623
Отправить сообщение для Felicast с помощью ICQ
скорее всего размеры scale9Grid больше mcFrm
проверьте
Код AS3:
trace(_info_panel.mcFrm.width > (11 + 315);
перед присвоением scale9Grid, и соответственно для высоты

2Neirol: ошибка не в этом. ваше решение не поможет
__________________
я могу стать всем, если только захочу


Последний раз редактировалось Felicast; 30.09.2009 в 12:19.
Старый 01.10.2009, 02:18
LA_ вне форума Посмотреть профиль Отправить личное сообщение для LA_ Найти все сообщения от LA_
  № 4  
Ответить с цитированием
LA_

Регистрация: Jun 2009
Сообщений: 64
Felicast, похоже, вы правы.
изменив размеры прямоугольника на Rectangle(10, 10, 20, 20), все работает нормально.
а вот
Код AS3:
_info_panel.mcFrm.scale9Grid = new Rectangle(10, 10, _info_panel.mcFrm.width-20, _info_panel.mcFrm.height-20);
возвращает ту же ошибку.
хотя
Цитата:
_info_panel.mcFrm.width=322.6
_info_panel.mcFrm.height=232.55
первый вариант, видимо, работает как надо, т.к. mcFrm (как instance frame'a) уже имеет заданный scale9Grid (через среду CS4, не через as). неужели второй вариант не работает по той же причине?


Последний раз редактировалось LA_; 01.10.2009 в 02:26.
Старый 01.10.2009, 11:09
Felicast вне форума Посмотреть профиль Отправить личное сообщение для Felicast Найти все сообщения от Felicast
  № 5  
Ответить с цитированием
Felicast
 
Аватар для Felicast

Регистрация: Feb 2008
Адрес: Череповец
Сообщений: 623
Отправить сообщение для Felicast с помощью ICQ
чета, я немного не понял: если вы задаете scale9Grid в CS4, зачем вы задаете scale9Grid в as?
__________________
я могу стать всем, если только захочу

Старый 01.10.2009, 20:58
LA_ вне форума Посмотреть профиль Отправить личное сообщение для LA_ Найти все сообщения от LA_
  № 6  
Ответить с цитированием
LA_

Регистрация: Jun 2009
Сообщений: 64
Felicast, скажем, я не ожидал, что то, что я задал в CS4 будет работать и в коде as ))
а теперь просто интересно почему так

Добавлено через 1 час 24 минуты
кстати, trace заданного в CS4 scale9Grid возвращает
Цитата:
(x=-130, y=-59, w=257, h=113)
т.е. нужно задавать размеры не относительно mcFrm


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

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

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


 


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


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