Originariamente inviato da simone75
...è possibile impostare tramite actionscript lo stato "Sopra" al caricamento della pagina? senza che il mouse necessariamente debba passarci sopra? quindi che debba rimanere in quello stato finche non si carichi un'altra pagina? Grazie a chiunque voglia aiutarmi.
Ciao
Dovresti creare una funzione che blocca il pulsante premuto nella posizione di mouseOver e lo sblocca qualora venga premuto un altro pulsante.
Impostare da subito il pulsante della sezione caricata nella posizione di mouseOver che verrà sbloccato e riportato alle sue normali funzioni al click su un'altro pulsante.
Un esempio pratico:
Abbiamo 4 pulsanti (MovieClip) sullo stage con i loro nomi istanza: b1,b2,b3,b4.
Ognuno di questi è un'istanza dello stesso simbolo MovieClip costituito da un fotogramma con uno stop(); e un secondo fotogramma con lo stesso pulsante di colore diverso che sarà visualizzato al mouseOver.
Il codice da inserire sulla timeline principale sarà questo:
Codice PHP:
var cliccato:uint;
var listaPulsanti:Array = new Array(b1,b2,b3,b4);
inizializzoPulsanti();
function inizializzoPulsanti():void
{
for (var i=0; i<listaPulsanti.length; i++)
{
listaPulsanti[0].gotoAndStop(2);
listaPulsanti[0].mouseEnabled = false;
listaPulsanti[i].idPulsante = i + 1;
listaPulsanti[i].mouseChildren = false;
listaPulsanti[i].buttonMode = true;
listaPulsanti[i].addEventListener(MouseEvent.MOUSE_OVER,entra);
listaPulsanti[i].addEventListener(MouseEvent.MOUSE_OUT,esci);
listaPulsanti[i].addEventListener(MouseEvent.CLICK,clicca);
}
}
function clicca(evento:MouseEvent):void
{
var id:uint = uint(evento.currentTarget.idPulsante);
if (id != cliccato)
{
evento.currentTarget.gotoAndStop(2);
bloccaPulsante(id);
}
}
function entra(evento:MouseEvent):void
{
var id:uint = uint(evento.currentTarget.idPulsante);
if (id != cliccato)
{
evento.currentTarget.gotoAndStop(2);
}
}
function esci(evento:MouseEvent):void
{
var id:uint = uint(evento.currentTarget.idPulsante);
if (id != cliccato)
{
evento.currentTarget.gotoAndStop(1);
}
}
function bloccaPulsante(clickmenu:uint):void
{
listaPulsanti[0].gotoAndStop(1);
listaPulsanti[0].mouseEnabled = true;
for (var num = 1; num <= listaPulsanti.length; num++)
{
if (clickmenu == num)
{
listaPulsanti[num - 1].gotoAndStop(2);
listaPulsanti[num - 1].mouseEnabled = false;
}
if (cliccato == num)
{
listaPulsanti[num - 1].gotoAndPlay(1);
listaPulsanti[num - 1].mouseEnabled = true;
}
}
cliccato = clickmenu;
}
All' avvio del filmato il pulsante con valore [0] nell'array apparirà bloccato e disabilitato sul suo fotogramma 2, ovvero quello con colore diverso.
Al click su un'altro pulsante, il pulsante premuto verrà bloccato sul suo fotogramma 2 e verrà sbloccato e riabilitato il pulsante bloccato in precedenza.
ciao