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

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

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

Регистрация: Oct 2003
Сообщений: 74
По умолчанию Проблема с получением габаритов объекта класса

Мое приложение состоит из главного файла main.mxml и "разложенных" в контейнеры mx:VBox и mx:HBox классов, отвечающих за элементы интерфейса:

main.mxml
Код:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*"
  layout="absolute" width="100%" height="100%"
  creationComplete="startApp()">
  <mx:Script><![CDATA[
...
public function startApp():void {
  objectMap.myRoot = this; // Это чтобы objectMap мог обращаться к данным основного класса.
  ...
}
  ]]></mx:Script>
...
  <mx:Canvas width="100%" height="100%">
    <mx:HBox width="100%" height="100%" horizontalAlign="center" verticalAlign="middle">
      <mx:Canvas width="99%" height="99%" backgroundColor="#869ca7" styleName="loginSection">
        <mx:VBox width="100%" height="100%">
          <MenuTextBar id="menuTextBar" width="100%" height="20" tabIndex="30"/>
          <mx:HDividedBox width="100%" height="100%">
            <mx:VDividedBox width="100%" height="100%">

<!-- ВОТ ОБЪЕКТ, ГРУЗЯЩИЙ КАРТИНКУ -->
              <ObjectMap id="objectMap" width="100%" height="75%" tabIndex="100"/>

              <MsgWindow id="msgWindow" width="100%" height="25%" tabIndex="200"/>
            </mx:VDividedBox>
            <DevicesTree id="devicesTree" width="200" height="100%" tabIndex="30"/>
          </mx:HDividedBox>
        </mx:VBox>
      </mx:Canvas>
    </mx:HBox>
  </mx:Canvas>
</mx:Application>
Класс ObjectMap, созданный на базе mx:Canvas, загружает картинку и выводит ее на экран. Мне нужно отмасштабировать загруженную картинку так, чтобы она занимала 100% ширины и высоты той области, в которой она находится.

ObjectMap.mxml:
Код:
<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" width="100%" height="100%" backgroundColor="#c9c9c7" styleName="loginSection">
  <mx:Script><![CDATA[
...
public var myRoot; // Это "ссылка" на основной класс main.mxml

private function imageCompleteHandler(event:Event):void {
// Этод метод вызывается по успешном окончании загрузки картинки.
// Картинка прекрасно аттачится и выводится на экран.
// Ширина и высота canvas установлены в 100%, но мне не удается получить размеры Canvas:

Alert.show("myRoot.objectMap.width="+myRoot.objectMap.width+", this.width="+this.width);
// выдает "myRoot.objectMap.width=0, this.width=0".
}
  ]]></mx:Script>
</mx:Canvas>
Как определить размер "окна", в котором лежит objectMap, чтобы максимально отмасштабировать загруженную картинку?


Последний раз редактировалось yana_flash; 22.06.2007 в 19:50.
Старый 09.07.2007, 15:02
Nurkanat вне форума Посмотреть профиль Отправить личное сообщение для Nurkanat Найти все сообщения от Nurkanat
  № 2  
Ответить с цитированием
Nurkanat

Регистрация: Jul 2007
Адрес: Кыргызстан
Сообщений: 9
Как я понял, ObjectMap лежит внутри
<mx:VDividedBox width="100%" height="100%">

Если это так, то Вам надо узнать размер этого объекта(контейнера для ObjectMap).


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

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

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


 


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


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