Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Изменить размер мувика в ScrolPane (http://www.flasher.ru/forum/showthread.php?t=111303)

GVA2 21.04.2008 19:09

Изменить размер мувика в ScrolPane
 
загрузил в ScrolPane мувик с картой города. Положил слайдер и хочу с его помощью изменять масштаб карты.
Подскажите как добраться до свойств мувика, загруженного в ScrolPane?

Код:

import fl.controls.Label;
import fl.controls.Slider;
import fl.events.SliderEvent;
import fl.controls.SliderDirection;
import fl.containers.ScrollPane;

var myLabel:Label = new Label();
myLabel.autoSize = TextFieldAutoSize.LEFT;
myLabel.text = "";
myLabel.move(520, 3);
addChild(myLabel);

var mySlider:Slider = new Slider();
mySlider.addEventListener(SliderEvent.THUMB_DRAG, thumbDragHandler);
mySlider.move(myLabel.x, myLabel.y + myLabel.height);
mySlider.move(525, 20);
mySlider.direction = SliderDirection.VERTICAL;
mySlider.height = 300;
mySlider.tickInterval = 1;
mySlider.snapInterval = 0.5;
mySlider.value = 5;

addChild(mySlider);

function thumbDragHandler(event:SliderEvent):void {
    myLabel.text = ""+event.value;

//СЮДА надо влепить обработку масштаба мувика kartaAll

       
}

var sp:ScrollPane = new ScrollPane();
sp.setSize(500, 400);
sp.source = "kartaAll";
addChild(sp);


silin 21.04.2008 20:43

непонятно в чем трабл..
по-простому myScrollPan.content.scaleX = mySlider.value; не пробовал?

GVA2 23.04.2008 17:12

Цитата:

по-простому myScrollPan.content.scaleX = mySlider.value; не пробовал?
спасибо! myScrollPan.content.visible = false; срабатывает на ура! но реально в подгруженном мувике есть еще 2 клипа с Instance Name bg и karta

попытка скрыть один из этих клипов
myScrollPan.content.karta.visible = false;
выдает ошибку :(

что я не так делаю?

silin 23.04.2008 17:23

myScrollPan.content["karta"].visible = false;

GVA2 23.04.2008 17:30

ОГРОМНОЕ СПАСИБО!

GVA2 30.04.2008 14:57

подскажите пожалуйста еще разок.
у слайдера описана реакция на события
Код:

mySlider.addEventListener(SliderEvent.CHANGE, changeZoom);
mySlider.addEventListener(SliderEvent.THUMB_DRAG, changeZoom);

function changeZoom(event:SliderEvent):void {
...

но когда я делаю mySlider.value = 10; то события не обрабатываются...

может можно как-то принудительно вызвать функцию changeZoom?

silin 12.05.2008 21:20

SliderEvent.CHANGE генерится только при мышиных и клавишных манипуляциях ..
однако, ничего не мешает, как ты и предлагаешь, самому вызвать обработчик:
mySlider.value = 10;
changeZoom(null);


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

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