PDA

Просмотр полной версии : программная кнопка


admGT
23.07.2006, 23:37
Необходимо сделать программно кнопку с разными загружаемыми картинками на обычное состояние и на rollOver

Делаю так:
function makeButton(nameObj,pic,pic2){// make new button
this.createEmptyMovieClip(nameObj,this.getNextHighestDepth());
var newButton1:MovieClipLoader=new MovieClipLoader();
var mcListener:Object=new Object();
mcListener.onLoadInit=function(target_mc:MovieClip){
target_mc.onPress=function(){
trace("кнопка нажата");
}


}
newButton1.addListener(mcListener);
newButton1.loadClip(pic,nameObj);
newButton1.loadClip(pic2,nameObj);



}//Конец функции
Вызываю функцию
makeButton("first","pic1.jpg","pic2.jpg");


Дальше глухо. Вроде бы гружу 2 картинки в один клип, на одно и то же место. Отображается верхняя , что и следовало ожидать. А как сделать, чтобы картинки всеж менялись при наведении?

silin
23.07.2006, 23:54
как вариант: положить картинки в разные мувики , ну и менять из местами:
function makeButton(nameObj, pic, pic2) {
var but = this.createEmptyMovieClip(nameObj, this.getNextHighestDepth());
var overState = but.createEmptyMovieClip("over", 0);
var outState = but.createEmptyMovieClip("out", 1);
but.onPress = function() {
trace("кнопка нажата");
};
but.onRollOver=but.onRollOut=function(){
this.getInstanceAtDepth(0).swapDepths(1);
}
var newButton1:MovieClipLoader = new MovieClipLoader();
newButton1.loadClip(pic, overState);
newButton1.loadClip(pic2, outState);
}

makeButton("first", "pic1.jpg", "pic2.jpg");

admGT
24.07.2006, 11:00
Большое спасибо!!!