PDA

Просмотр полной версии : Резина в резине


serdeles
25.05.2010, 18:32
Есть резиновый флеш. Реально ли подгрузить туда резиновый мувик с фиксированной высотой, который на определённое количество пикселей сдвинут влево от верхнего левого угла сцены (в коде самой сцены уже указано позиционирование TL). Результат должен выглядеть примерно как на рисунке:

http://s42.***********/i098/1005/90/72ff7534dfda.gif

dark256
25.05.2010, 21:37
Такая конструкция у вас уже задействована?

function setupInterface()
{
// используем Stage.width
// используем Stage.height
}
this.onResize = function() { setupInterface() }
Stage.addListener(this)

В подгруженный через
var My_mc:MovieClipLoader = new MovieClipLoader()
по My_mc.onLoadInit - прицепляем через addListener примерно такой же обработчик onResize

serdeles
26.05.2010, 16:20
Поковырялся немного в коде, получилась вот такая штука:


Stage.scaleMode = "noScale";
Stage.align = "TL";
var resize_obj = {};
resize_obj.normal_width = 400;
resize_obj.normal_height = 300;
resize_obj.position = [My_mc
];
resize_obj.onResize = function()
{

var clip;
for (var i in this.position) {
clip = this.position[i];
clip._x = Stage.width*clip._xRatio;
clip._y = Stage.height*clip._yRatio;

if (clip._widthRatio != undefined) {
clip._width = Stage.width*clip._widthRatio;
}
if (clip._heightRatio != undefined) {
clip._height = Stage.height*clip._heightRatio;
}
}
};

Stage.addListener(resize_obj);

var clip;
for (var i in resize_obj.position) {
clip = resize_obj.position[i];
clip._xRatio = clip._x/resize_obj.normal_width;
clip._yRatio = clip._y/resize_obj.normal_height;
}
My_mc._widthRatio = My_mc._width/resize_obj.normal_width;

resize_obj.onResize();


+ исходник.

Меня устраивает всё, кроме одного момента: левая часть My_mc не зафиксирована в левой половине сцены, а двигается. А я хочу, чтобы она начиналась в 400 пикселях от левого поля сцены (окна браузера). Тянуться должна лишь правая часть My_mc.

Подскажите, как это сделать.