sector_222
27.02.2009, 15:32
ДОбрый день - я хочу чтобы маска скрывала часть списка из мувиков - а не наобород - что у меня и вышло ( см. влож) вот код
import mx.transitions.Tween;
import mx.video.*;
import mx.transitions.easing.*;
import flash.display.*;
import flash.geom.*;
import flash.filters.*;
//Делаем флешку не масштабируемой и ставим максимально хорошее качество
Stage.scaleMode = "noScale";
Stage.align = "B";
_root._quality = "BEST";
// координаты компонентов
vert_x = 10; //координаты вертикальной панели
vert_y = 10;
goriz_x = 356; //координаты горизонтальной панели
goriz_y = 646;
vert_width = 100;//размеры вертикальной панели
vert_height = 500;
goriz_width = 500;//размеры горизонтальная панели
goriz_height = 100;
thumb_height = 50; //размеры мелких фото
thumb_width = 50;
full_x = 200; //коордиты больших фото
full_y = 200;
imageShift = 2;//дистанция между картинками
Vertical();
createMaskVert();
scrolling();
/*****функция выводит вертикальное меню с горизонтальным по первой теме***************/
function Vertical() {
/******id темы - для обращения к базе и вывода горизонтального списка************/
/****************************************************************/
//обработчик для передачи параметров
formData = new LoadVars();
//при загрузке флешки в пустое поле выводить сообщение
formData.onLoad = function(success:Boolean) {
if (success) {
//стартовая позиция картинок по X
var startXv:Number = vert_x;
//стартовая позиция картинок по Y
var startYv:Number = vert_y;
//текущая координата картинки
var currImageXv:Number = 0;
// создаём пустой клип с нужными координатами для панели прокрутки с мелкими фотками
_root.createEmptyMovieClip("container_mcV",_root.getNextHighestDepth());
container_mcV._x = vert_x;
container_mcV._y = vert_y;
//вносим список имён тем в массив
var my_str1:Array= formData.name_tema
var nameTemes_array = new Array();
nameTemes_array = my_str1.split("$$");
//вносим ID тем
var my_str2:Array= formData.id_tema;
var idTemes_array = new Array();
idTemes_array = my_str2.split("$$");
//пока не кончится все фотки загружаем их в контейнер
//for (var i = 0; i<nameTemes_array.length-1; i++)
for (var i = 0; i<10; i++)
{
//добовляем картинку из библиотеки
var tema:MovieClip = _root.container_mcV.attachMovie("tema","tema"+i,i);
//оптимизируем скрипт создавая переменную tema передавая ей ссылку на нашу картинку
//var tema:MovieClip = _root.container_mcV["tema"+i];
tema._x = startXv;
tema._y = startYv;
//выщитываем новую координату для следующей картинки
startYv += tema._height+imageShift;
//принажатии на изображение вызываем горизонтальную панель
tema.onRelease = function() {
_root.Gorizontal(IdKey_array,IdName_array);
};
//при наведении на изображение - прозрачность на 50%
tema.onRollOver = function() {
this._alpha = 50;
};
// и наоборот
tema.onRollOut = function() {
this._alpha = 100;
};
tema.temaText.text = nameTemes_array[i];
//массивы для передачи ID темы и имя темы чтобы передать функции отображения
//горизонтального списка
tema.IdKey_array = idTemes_array[i];
tema.IdName_array = nameTemes_array[i];
if (i == 0)//если первый запрос то загружаем сразу первую temu
{
Gorizontal(idTemes_array[i],nameTemes_array[i]);
}
}
} else{
//tema.temaText.text = "Error loading/parsing LoadVars.";
}
};
//обмен данными с MySQL значения объекта formData методом POST
formData.sendAndLoad('phpinitializ.php',formData,'POST');
}
function createMaskVert() {
//создаём пустой клип для маски с известными координатами для скроль панели
_root.createEmptyMovieClip("mask_mcV",_root.getNextHighestDepth());
mask_mcV._x = vert_x;
mask_mcV._y = vert_y;
//отчерчивает маску с размерами панели
mask_mcV.beginFill(0x000000,50);
mask_mcV.lineTo(vert_width,0);
mask_mcV.lineTo(vert_width,vert_height);
mask_mcV.lineTo(0,vert_height);
mask_mcV.lineTo(0,0);
// устанавливаем маску для скроль панели
_root.container_mcV.setMask(mask_mcV);
}
подскажите пожалуйста, где моя ошибка??? пример брал из второго файла
import mx.transitions.Tween;
import mx.video.*;
import mx.transitions.easing.*;
import flash.display.*;
import flash.geom.*;
import flash.filters.*;
//Делаем флешку не масштабируемой и ставим максимально хорошее качество
Stage.scaleMode = "noScale";
Stage.align = "B";
_root._quality = "BEST";
// координаты компонентов
vert_x = 10; //координаты вертикальной панели
vert_y = 10;
goriz_x = 356; //координаты горизонтальной панели
goriz_y = 646;
vert_width = 100;//размеры вертикальной панели
vert_height = 500;
goriz_width = 500;//размеры горизонтальная панели
goriz_height = 100;
thumb_height = 50; //размеры мелких фото
thumb_width = 50;
full_x = 200; //коордиты больших фото
full_y = 200;
imageShift = 2;//дистанция между картинками
Vertical();
createMaskVert();
scrolling();
/*****функция выводит вертикальное меню с горизонтальным по первой теме***************/
function Vertical() {
/******id темы - для обращения к базе и вывода горизонтального списка************/
/****************************************************************/
//обработчик для передачи параметров
formData = new LoadVars();
//при загрузке флешки в пустое поле выводить сообщение
formData.onLoad = function(success:Boolean) {
if (success) {
//стартовая позиция картинок по X
var startXv:Number = vert_x;
//стартовая позиция картинок по Y
var startYv:Number = vert_y;
//текущая координата картинки
var currImageXv:Number = 0;
// создаём пустой клип с нужными координатами для панели прокрутки с мелкими фотками
_root.createEmptyMovieClip("container_mcV",_root.getNextHighestDepth());
container_mcV._x = vert_x;
container_mcV._y = vert_y;
//вносим список имён тем в массив
var my_str1:Array= formData.name_tema
var nameTemes_array = new Array();
nameTemes_array = my_str1.split("$$");
//вносим ID тем
var my_str2:Array= formData.id_tema;
var idTemes_array = new Array();
idTemes_array = my_str2.split("$$");
//пока не кончится все фотки загружаем их в контейнер
//for (var i = 0; i<nameTemes_array.length-1; i++)
for (var i = 0; i<10; i++)
{
//добовляем картинку из библиотеки
var tema:MovieClip = _root.container_mcV.attachMovie("tema","tema"+i,i);
//оптимизируем скрипт создавая переменную tema передавая ей ссылку на нашу картинку
//var tema:MovieClip = _root.container_mcV["tema"+i];
tema._x = startXv;
tema._y = startYv;
//выщитываем новую координату для следующей картинки
startYv += tema._height+imageShift;
//принажатии на изображение вызываем горизонтальную панель
tema.onRelease = function() {
_root.Gorizontal(IdKey_array,IdName_array);
};
//при наведении на изображение - прозрачность на 50%
tema.onRollOver = function() {
this._alpha = 50;
};
// и наоборот
tema.onRollOut = function() {
this._alpha = 100;
};
tema.temaText.text = nameTemes_array[i];
//массивы для передачи ID темы и имя темы чтобы передать функции отображения
//горизонтального списка
tema.IdKey_array = idTemes_array[i];
tema.IdName_array = nameTemes_array[i];
if (i == 0)//если первый запрос то загружаем сразу первую temu
{
Gorizontal(idTemes_array[i],nameTemes_array[i]);
}
}
} else{
//tema.temaText.text = "Error loading/parsing LoadVars.";
}
};
//обмен данными с MySQL значения объекта formData методом POST
formData.sendAndLoad('phpinitializ.php',formData,'POST');
}
function createMaskVert() {
//создаём пустой клип для маски с известными координатами для скроль панели
_root.createEmptyMovieClip("mask_mcV",_root.getNextHighestDepth());
mask_mcV._x = vert_x;
mask_mcV._y = vert_y;
//отчерчивает маску с размерами панели
mask_mcV.beginFill(0x000000,50);
mask_mcV.lineTo(vert_width,0);
mask_mcV.lineTo(vert_width,vert_height);
mask_mcV.lineTo(0,vert_height);
mask_mcV.lineTo(0,0);
// устанавливаем маску для скроль панели
_root.container_mcV.setMask(mask_mcV);
}
подскажите пожалуйста, где моя ошибка??? пример брал из второго файла